【发布时间】:2020-02-14 22:02:24
【问题描述】:
我有一个数据框列表,我正在尝试使用lapply 来消除我的数据中的异常,尝试使代码尽可能健壮,因为输入的数据会不断变化。
我正在尝试使用:
newdata <- lapply(ChaseSubSet, function(){
anomalies <- 0.02 > ChaseSubSet[,1] > 0.03
anomalies = na
})
但是 a) 这不起作用 b) 我认为摆脱平均值超过 0.1 的值会更加稳健。我必须对数据的每一列应用不同的规则,但让它适用于列表中的所有 data.frames。我想使用 lapply 在最后生成一个列表。
我的数据如下:
我想对列表的所有 13 个数据框进行排序,它们都像这张图片。我想如果 value 的异常值被替换为 NA 我的想法是这将在以后使用不同长度的不同列产生最少的问题。
我还是新手,如果有任何不正确之处,我深表歉意。
【问题讨论】:
-
lapply(ChaseSubSet, function(x){subset(x,x[,1] - mean(x[,1])
-
这样的?嘿,不太清楚 ChaseSubSet 是什么样的,以及你想如何过滤
-
如果您包含一个简单的reproducible example,其中包含可用于测试和验证可能解决方案的示例输入和所需输出,则更容易为您提供帮助。
-
谢谢@StupidWolf 我可以问一个问题,该代码的哪一部分将摆脱满足这些要求的值是子集函数的作用?它会用 na 代替它们吗?
-
ChaseSubSet是数据帧列表还是该列表中的数据帧之一?