Удалить строки из фрейма данных, где строка соответствует строке
Я удаляю все строки в фрейме данных, где определенная строка соответствует критерию соответствия строк?
Например:
A,B,C
4,3,Foo
2,3,Bar
7,5,Zap
Как я могу вернуть фрейм данных, который исключает все строки, где C = Foo:
A,B,C
2,3,Bar
7,5,Zap
Ответы
Ответ 1
Просто используйте ==
с символом отрицания (!
). Если dtfm - это имя вашего файла data.frame:
dtfm[!dtfm$C == "Foo", ]
Или, чтобы переместить отрицание в сравнении:
dtfm[dtfm$C != "Foo", ]
Или, даже короче, используя subset()
:
subset(dtfm, C!="Foo")
Ответ 2
Вы можете использовать пакет dplyr
, чтобы легко удалить эти конкретные строки.
library(dplyr)
df <- filter(df, C != "Foo")