在对数据集进行子集化后删除异常值

时间:2016-04-21 13:57:16

标签: r outliers

我正在分析数据集以及原始数据集中的异常值,我将其存储在单独的对象中。但是,我想用原始数据的子集重复整个分析,并再次使用相同的异常值对象。但在以下情况下似乎很难:

答:异常值仍在子集中,但已被替换。因此row.number已更改,错误的样本将被删除。

这是一个例子

# Test Dataset
set.seed(1234)
test <- data.frame(F1 = gl(5,5, labels=c("A","B","C","D","E")),
                   V1 = rnorm(25,5,2.1))
# add Treatment effect
test <- within(test, V1 <- as.numeric(F1)+V1)

#add outlier
test[14,2] <- 120

# remember outlier
outlier = -14

# Drop Outlier
which(rownames(test[outlier,])==14)
  

整数(0)

# Drop Outlier from subset
test2 <- test[!test$F1=="B",]
which(rownames(test2[outlier,])==14)
  

9

在对数据集进行子集化之后,任何想法如何获得正确的异常值?

0 个答案:

没有答案