2015-08-10 5 views
0

Не могли бы вы объяснить мне, есть ли способ извлечь выбросы из участка. Я заговорил о коробке и хочу извлечь только выбросы.Как извлечь выбросы из участка участка в R

Вот код для данного окна.

# melting down 
require(reshape) 
melt_nx <- melt(nx, id.vars = c("x", "y")) 
boxplot(data = melt_nx, main = "NX", value ~ variable, las = 2,  
par(mar = c(15, 5, 4, 2) + 0.1), 
names = c("We1", "We2", "we3")) 

Возможно ли из окна коробки извлечь изъяны?

+1

Пожалуйста показать воспроизводимый пример 'melt_nx <- расплавиться (NX, id.vars = с ("X",«Y ")) # Ошибка в is.data.table (данные): объект 'nx' not found' – akrun

ответ

2

Функция boxplot возвращает список с одним из его имен узлов как «вне». Это значения, которые находятся за пределами «усов». Я не знаю, о выполнении par в списке аргументов, но если вы хотите, чтобы эти конкретные значения, а затем использовать это:

vals <- boxplot(data = melt_nx, main = "NX", value ~ variable, las = 2,  
     names = c("We1", "We2", "we3")) 
vals$out 

И прочитать все эти страницы справки:

?boxplot 
?boxplot.stats 
?bxp 
?fivenum 
+0

Привет. Я тестирую команду, в которой он работает. Проблема, с которой я сталкиваюсь, заключается в том, что в моем DF у меня есть один серийный номер столбца, возможно ли, когда я извлекаю выбросы, чтобы сопоставить их по их номерам? –

+0

Большое спасибо за помощь. Я очень ценю вашу помощь. :) Это отлично работает для меня. –

0

Я знаю, что это но для меня существует альтернативный метод, используя метод Boxplot от автомобиль. Обратите внимание на капитал B в вызове функции Boxplot.

Это код, который делает это для меня, она возвращает число строк из выпадающих которые вы можете использовать в вашем dataframe, чтобы отфильтровать или экстракт и т.д. ...

outliers<-Boxplot(x~y, data=df, id.method="y") 

Обратите внимание, что извлеченные значения имеют тип Персонаж. Тогда, чтобы исключить их, вы могли бы сделать что-то вроде:

df2 <- df[-as.numeric(outliers),] 

Надеется, что это помогает немного

Смежные вопросы