У меня есть фрейм данных, который выглядит следующим образом:
Var1 Var2 Var3
100 B 15
200 A 16
700 A 13
500 C 10
Это просто данные предварительного просмотра, на самом деле в нем более 10000 строк.
Я делаю следующее:
data %>%
group_by(Var2) %>%
mutate(Tercile = fabricatr::split_quantile(Var3, 3)) %>%
group_by(Var2, Tercile) %>%
summarise(Var1 = mean(Var1))
Это приводит к следующему сообщению об ошибке:
The `x` argument provided to quantile split must be non-null and length at least 2.
Насколько я понимаю, это означает, что для некоторых значений Var2
существует только 1 уникальное значение Var3
и терцильный раскол не может быть осуществлен. Мой первый вопрос: Правильно ли это толкование ? Меня смущает часть, в которой написано "length at least 2"
, потому что я ожидаю, что длина должна быть не менее 3 для выполнения терцильного разделения, верно?
Если интерпретация верна, мой второй вопрос: Как автоматизировать исключение таких случаев ? У меня почти не хватает времени, чтобы go пройти примерно 300 значений Var2 и изучить значения Var3. Мне нужно решение для кодирования, исключающее такие уровни Var2, чтобы упомянутая ранее ошибка не появлялась.