2013-09-18 3 views
0

В R, как вы генерируете вектор (данные) с выбросами? Отлично, если данные «приемлемы» нормально распределены.Создать вектор (данные) нормального распределения с выбросами?

+3

Вы можете комбинировать различные ГСЧ в R, как '' runif', rnorm', 'rgamma', чтобы получить смешанная модель, которая «приемлемо» нормальна с некоторым добавленным шумом. Тем не менее, ваш вопрос слишком широк для этого форума. Пожалуйста, будьте более конкретными. –

+0

По-моему, это вопрос стоящий вопрос. Я не просил синтаксический пример. Просто намек. Таким образом, ваша степень детализации подходит и звучный ответ. Спасибо. – feder

+0

@feder Ваш вопрос также может быть закрыт по теме * off: вопросы, требующие кода, должны демонстрировать минимальное понимание решаемой проблемы *, а также слишком широкую категорию. См. [**, как сделать отличный воспроизводимый пример **] (http://stackoverflow.com/q/5963269/1478381), чтобы узнать больше о заданном вопросе. –

ответ

1

Это действительно зависит от определения «outlier»;

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

@DWin прав, что это зависит от того, что вы подразумеваете под «outlier». Для записи я использую то же определение, которое он использует, поэтому я бы использовал (использовал) что-то вроде кода he и @ Ferdinand.kraft, list. Другие иногда означают дату, более экстремальное, чем обычно. Это сложно определить для симуляционного исследования, но общее определение - это точка, более чем в 1,5 раза превышающая межквартильный диапазон за 1-й (3-й) квартиль. Вот простой способ найти, что (я уверен, что будет более эффективные способы):

flag <- 0 
while(flag==0){         
    X <- rnorm(N)          
    bp <- boxplot(X, plot=FALSE) 
    if(length(bp$out)!=0){ 
    flag <- 1 
    } 
} 
Смежные вопросы