Создание вложенных подмножеств в драге

В драге (пакет MuMIn) я хочу использовать «подмножество», чтобы исключить любую модель, сочетающую переменную A с одним из B, C или D. Я пробовал

library(MuMIn) dg <- dredge (global.model, subset = !("A"&c("B","C","D"))

который дает тот же результат, что и dg <- dredge (global.model, subset = !("A"&"B"), поэтому исключает только модели, содержащие A и B вместе. Есть ли способ накормить подмножество вектором имен переменных?

Конечно, я мог бы использовать subset=!(A&B)|!(A&C)|!(A&D), но я бы предпочел использовать «вектор исключения».


person yenats    schedule 16.09.2017    source источник


Ответы (1)


Самое простое выражение для этого, вероятно, subset = !A | !sum(B, C, D). Результат тот же, что и !A | !(B | C | D).

person Kamil Bartoń    schedule 16.09.2017
comment
Благодарим за ваше предложение. Я перешел на subset = !(A & sum(B,C,D)), и это сработало. Ваш код полностью исключает переменные из анализа. Возможно, вы сможете обновить свой ответ? В качестве дополнения: могу ли я добавить второе подмножество, например !B&C? - person yenats; 16.09.2017
comment
Думаю, я нашел способ: subset = !(A&sum(B, C, D)) && !(B&C)) Просто чтобы правильно понять: означает ли это - исключить модели, содержащие A и хотя бы одну из B, C, D и - исключить модели, содержащие оба B, C вместе? - person yenats; 16.09.2017
comment
!(A & sum(B,C,D)) фактически идентичен моему примеру (не x или не y == not (x и y)). Кроме того, вы можете использовать sum(B, C, D) < N), чтобы ограничить количество параллельных переменных, или > N, чтобы установить минимальное количество переменных. Для этой цели также может пригодиться специальная переменная *nvar*. - person Kamil Bartoń; 17.09.2017