如何根据R中的某些条件删除数据

时间:2013-05-30 11:57:45

标签: r criteria

我想删除数据点,如果它们的值高于某个值但低于另一个值,但我根本无法弄清楚如何在R中执行它。

如果x <0.5且y> 2,我想删除数据点,但需要满足这两个标准。

提前致谢!

2 个答案:

答案 0 :(得分:2)

dat <- data.frame(x=runif(100,0,2), y=runif(100,1,4))
todrop <- which(dat$x <0.5 & dat$y>2)
dat <- dat[-todrop,]

答案 1 :(得分:2)

如果您想以编程方式使用此功能,则应避免使用subset(有关详细信息,请参阅Why is `[` better than `subset`?)。

相反,您可以使用data.frame语法:

dat[ dat$x >= 0.5 & dat$y <= 2, ]

任何R初学者都必须阅读? "[.data.frame"