Удаление выбросов с помощью boxplot.stats в данных
Я пытаюсь удалить выбросы, используя IQR (boxplot.stats) в кадре данных. Но я получаю следующую ошибку. Проверка выбросов должна происходить в каждой переменной, и, если одна переменная является выбросом, удалить всю строку (все переменные).
'data.frame': 214 obs. of 7 variables:
$ V2: num 0.115 0.112 0.106 0.104 0.108 0.116 0.127 0.117 0.115 0.114 ...
$ V3: num 0.144 0.175 0.179 0.171 0.167 0.174 0.152 0.178 0.159 0.178 ...
$ V4: num 0.152 0.203 0.221 0.216 0.22 0.205 0.214 0.182 0.211 0.195 ...
$ V5: num 0.191 0.171 0.161 0.172 0.167 0.171 0.156 0.174 0.173 0.171 ...
$ V6: num 0.173 0.165 0.156 0.164 0.167 0.163 0.144 0.162 0.165 0.164 ...
$ V7: num 0.146 0.116 0.116 0.116 0.113 0.116 0.146 0.126 0.117 0.121 ...
$ V8: num 0.078 0.057 0.061 0.056 0.057 0.054 0.061 0.061 0.06 0.059 ...
> Outlier = boxplot.stats(SizePro)
Error in `[.data.frame`(x, order(x, na.last = na.last, decreasing =
decreasing)) :
undefined columns selected
1 ответ
Решение
boxplot.stats()
способен рассчитывать только один блокпост за раз, поэтому вам нужно зациклить его на вашем фрейме данных:
apply(df, 2, boxplot.stats)