У меня есть фрейм данных, в котором я хочу уменьшить его размер, выбрав все экземпляры, ИСТИНА появляется в фрейме данных.
Вот фрейм данных:
df<-structure(c("1", "2", "3", "4", "5", "TRUE", "FALSE", "TRUE",
"TRUE", "FALSE", "FALSE", "FALSE", "FALSE", "TRUE", "FALSE",
"TRUE", "FALSE", "FALSE", "TRUE", "FALSE", "a", "b", "c", "d",
"e"), .Dim = c(5L, 5L), .Dimnames = list(NULL, c("A", "B_down",
"C_down", "D_down", "E")))
Чтобы уменьшить фрейм данных до значения TRUE, я использовал этот код:
df[which(apply(df[,c(2:4)],1,function(x) any(x)=="TRUE")),]
Однако я вручную выбрал столбцы c(2: 4) - B_down , C_down , D_down, , поскольку они имеют _down окончание.Как выбрать эти столбцы динамически в R, без жесткого кодирования.
Я вижу в [post here] ( фильтрация с несколькими условиями по многим столбцам с использованием dplyr ), можно использовать select (df, заканчивается_with ("_ down")) , но это дает мне только частичный кадр данных.Я хочу, чтобы вся структура данных сохранялась, как указано выше.
Спасибо за помощь.