通过列中的值过滤数据框

我正在使用数据集LearnBayes 。 对于那些想看到实际数据的人:

 install.packages('LearnBayes') 

我正在尝试根据列中的值过滤出行。 例如,如果列值是“水”,那么我想要那一行。 如果列值是“牛奶”,那么我不想要它。 最终,我试图过滤掉所有饮料栏中的“水”。

子集命令不是必需的。 只需使用dataframe索引

 studentdata[studentdata$Drink == 'water',] 

阅读?subset的警告

这是一个交互式使用的便利function。 对于编程,最好使用像'['这样的标准子集函数,特别是参数'子集'的非标准评估可能会有意想不到的后果。

尝试这个:

 subset(studentdata, Drink=='water') 

应该这样做。

以为我会更新这个dplyr解决scheme

 library(dplyr) filter(studentdata, Drink == "water")