我有 5 个变量和 1000 个观察值。因此,这 5 个变量包含许多异常值,例如 10,11、13、1003、10987、1099,并且还包含缺失值。所以我想删除多个异常值。
问问题
4521 次
2 回答
3
您可以创建一个条件来提取相关数据并排除异常值。例如,如果您的数据框被称为“df1”,并且您想在某个列(例如:列“2”)中提取值介于 1 和 5 之间的数据:
condition1 <- df1[,2] >=1 & df1[,2] <=5
df1 <- df1[condition1,]
我希望这有帮助
于 2013-05-13T08:50:31.233 回答
0
不太依赖特定值的东西使用分位数。
df <- data.frame(a = c(rep(1, 5), c(5, 7)), b = 1:7)
keep <- sapply(names(df), function(f) (df[,f] <= quantile(df[,f], probs = c(0.9))) )
df[apply(keep, 1, all),]
a b
1 1 1
2 1 2
3 1 3
4 1 4
5 1 5
6 5 6
于 2015-03-21T03:44:54.563 回答