【发布时间】:2019-11-02 18:48:04
【问题描述】:
我正在使用支持向量机并希望减少异常值。 所以我有一个功能可以将异常值减少到原始值的 70%。 我发现这种方法比 Winsorization 更好,因为它不会为大量数据点分配相同的值,而是创建更均匀的分布。
减少异常值的功能 -
outlier <- function(x) {
x[x < quantile(x,0.25, na.rm = TRUE) - 3 * IQR(x, na.rm = TRUE) | x > quantile(x,0.75, na.rm = TRUE) + 3 * IQR(x, na.rm = TRUE)] <- (x * 0.7)
x
}
问题是该函数适用于某些列,但会在其他列上产生此错误消息。
警告信息:
在 x[x
【问题讨论】: