我做了一个离群值函数,想将其应用于数据框列表。到目前为止没有成功。这是活泼还是活泼的工作?
# Remove outliers
outlier <- function(x) {
x[x < quantile(x,0.25) - 6 * IQR(x) | x > quantile(x,0.75) + 6 * IQR(x)] <- NA
x
}
答案 0 :(得分:3)
我们可以使用lapply
遍历list
的{{1}},然后通过遍历列(data.frame
)将函数应用于每一列并分配向后输出
lapply
如果列是混合类型,我们选择数字列并应用函数
lapply(lst1, function(x) {x[] <- lapply(x, outlier)
x })
或使用lapply(lst1, function(x) {i1 <- sapply(x, is.numeric)
x[i1] <- lapply(x[i1], outlier)
x
})
tidyverse