Такое ощущение, что это должно быть более простым, и я просто что-то упустил.Цель состоит в том, чтобы отфильтровать данные в новый df, где оба значения var 1 и 2 представлены в группе
, вот некоторые игрушечные данные:
grp <- c (rep («A», 3), rep («B», 2), rep («C», 2), rep («D», 1), rep («E», 2)) </p>
var<- c (1,1,2,1,1,2,1,2,2,2) </p>
id <- c (1:10) </p>
df <- as.data.frame (cbind (id, grp, var)) </p>
только новые grp A и C должны присутствовать в новых данных, потому что они единственные, где присутствуют var 1 и 2.
Я пробовал dplyr, но, очевидно, '&' не сработает, так как он не основан на строках, а '|'просто возвращает тот же df:
df.new <- df%>% group_by (grp)%>% filter (var == 1 & var == 2) # не возвращает строк