У меня есть данные с повторными измерениями, и я использую dplyr
для агрегирования данных.
Данные выглядят следующим образом:
r <- rep(seq(1,10,1),10)
x1 <- rbinom(100, 1, 0.5)
x2 <- rbinom(100, 2, 0.5)
y <- rnorm(100, 10, 5)
df <- data.frame(r,x1,x2,y)
Теперь, когда я хочу использовать dplyr
для суммирования y, сгруппированных по x1 и x2, я получаю сообщение об ошибке:
library(dplyr)
df %>%
select(x1, x2, y, r) %>%
group_by(x1, x2) %>%
summarise(
prop = round(length(df[y < .5])/length(df)*100,2))
Error in summarise_impl(.data, dots) :
Evaluation error: undefined columns selected.
Эта ошибка не возникает, если я ограничиваю r до определенного диапазона, используя filter
df %>%
select(x1, x2, y, r) %>%
filter(r == 1) %>%
group_by(x1, x2) %>%
summarise(
prop = round(length(df[y < .5])/length(df)*100,2))
Может ли кто-нибудь объяснить мне это и / или предложить решение?