Почему ave приводит к ошибке в unique.default? - PullRequest
0 голосов
/ 28 января 2020
x <- rnorm(100, 0, 10)
ave(x, cut(x, 10), mean)

Почему именно это возвращает следующую ошибку?

Ошибка в unique.default (x, nmax = nmax): unique () применяется только к векторам

cut возвращает коэффициент такой же длины, как x и в соответствии с ave документацией:

... Группировка переменных, обычно факторов, одинаковой длины с x.

1 Ответ

3 голосов
/ 28 января 2020

Синтаксис для ave равен

ave(x, ..., FUN = mean)

, где ... равен

Группируемые переменные, обычно факторы, имеют одинаковую длину с x

, что означает, что вы можете иметь более 1 группирующей переменной в ave. Чтобы применить функцию в ave, вам нужно явно назвать функцию с FUN.

Следовательно, выполните

ave(x, cut(x, 10), FUN = mean)

Кроме того, функция по умолчанию в ave равна mean, поэтому в этом случае вы можете напрямую выполнить

ave(x, cut(x, 10))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...