生成具有异常值的正态分布的向量(数据)?

时间:2013-09-18 20:25:44

标签: r

在R中,如何生成具有异常值的向量(数据)?如果数据是“可接受的”正常分布,那就太棒了。

2 个答案:

答案 0 :(得分:3)

@DWin是对的,这取决于“异常值”的含义。为了记录,我使用他正在使用的相同定义,所以我会使用(已经使用过)像代码和@ Ferdinand.kraft列表。其他人有时意味着比你通常发现的更极端的数据。这对于模拟研究来说是很棘手的,但是一个共同的定义是超过第一(第三)四分位数的四分位数范围的1.5倍。这是一个找到它的简单方法(我相信会有更有效的方法):

flag <- 0
while(flag==0){                                
  X  <- rnorm(N)                                    
  bp <- boxplot(X, plot=FALSE)  
  if(length(bp$out)!=0){ 
    flag <- 1
  }
}

答案 1 :(得分:1)

这实际上取决于“异常值”的定义;

    c(rnorm(100), 100, -100) # an egregious example
   plot(density( c( rnorm(90), rnorm(5, 1) ) ) ) # not as egregious