已关闭。此问题需要details or clarity。当前不接受答案。
**想要改进此问题?**添加详细信息并通过editing this post阐明问题。
三年前关闭了。
Improve this question
我是新来的,所以请对我宽容点:-)
我正在寻找一个解决方案,以删除在同一列中相差特定值的离群值:body_mass age 1 19 11 2 20 10 3 26 8 4 21 6 5 18 12 6 18 7 7 30 11 8 17 8 9 17 10 10 18 8
boxplot(body_mass~age, data = df, subset=age %in% c(0:22))$out
outliers <- boxplot(body_mass~age, data = df, subset=age %in% c(0:22))$out
df[which(df$body_mass %in% outliers),]
df <- df[-which(df$body_mass %in% outliers),]
但是,尝试这种方法会删除所有年龄段的所有值,即使它们只是一个年龄段的离群值
1条答案
按热度按时间kr98yfug1#
这真的取决于你如何定义“离群值”。但是如果你愿意接受离群值是四分位距加或减1. 5倍的任何值,那么你可以使用下面的方法按年龄组去除体重中的离群值。
此外,我假设您希望将每个年龄段作为一个单独的组,因为您没有指出其他情况。
定义一个将异常值替换为
NA
的函数。按年龄组和过滤器应用
remove_outliers()
。