r言語で異常値を直接削除する方法は何ですか。
R言語では、異常値を直接削除する方法が以下の通り利用できます。
- 条件判断を使用して異常値を削除します:比較演算子(たとえば<、>、<=、>=)と条件判断文を組み合わせて、異常値が存在する行を選択し、この行を削除します。
# 示例:删除数值向量中大于3和小于-3的异常值
v <- c(1, 2, 3, 4, 5, -10, -2, -1)
v <- v[v >= -3 & v <= 3]
- 部分集合()
- 組み込み関数 filter()
# 示例:使用subset()函数删除数值向量中大于3和小于-3的异常值
v <- c(1, 2, 3, 4, 5, -10, -2, -1)
v <- subset(v, v >= -3 & v <= 3)
# 示例:使用filter()函数删除数据框中某一列大于3和小于-3的异常值所在的行
df <- data.frame(x = c(1, 2, 3, 4, 5, -10, -2, -1), y = c(6, 7, 8, 9, 10, 11, 12, 13))
df <- filter(df, x >= -3 & x <= 3)
- 異常値を欠損値(NA)で置き換える:異常値を欠損値(NA)で置き換える。
# 示例:将数值向量中大于3和小于-3的异常值替换为NA
v <- c(1, 2, 3, 4, 5, -10, -2, -1)
v[v > 3 | v < -3] <- NA
適切な方法を選択するためには、具体的な状況に応じて異常値を削除する必要があります。