Я довольно новичок в R, поэтому извиняюсь, если ответ на этот вопрос уже существует, который я не могу найти.
Я не могу воспроизвести точную ошибку, которую я имею, с моим собственным набором данных, но так как возникает ошибка тем не менее, здесь мы go. То, что я пытаюсь сделать, - это создать функцию для вычисления среднего значения нескольких столбцов по значениям других. Допустим, что
d1 <- c(1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4)
d2 <- c(1:12)
d3 <- c(1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2)
df <- cbind(d1, d2, d3)
indicators_plotting1 <- function(a, b = d2, c = 1) {
temp_data <- df %>%
filter(d3 = c)
for_plot <- aggregate(b ~ a, df, mean)
plot(for_plot$b, for_plot$a)
}
indicators_plotting1(a = d1)
Хорошо работает, если я не включу бит %>% filter(d3 = c)
. Когда я включаю его, я получаю Ошибка в UseMethod ("filter_"): нет применимого метода для 'filter_', примененного к объекту класса "c ('matrix', 'double', 'Numberri c' ) ".
Что, когда я делаю это с набором данных, я предлагаю здесь. Когда я делаю это с моим большим и четырьмя фильтрами, я получаю Ошибка в eval (predvars, data, env): объект 'd1' не найден .
Любые мысли ? Заранее спасибо