Как я могу использовать агрегирование для группировки и вменения данных? - PullRequest
0 голосов
/ 12 октября 2018

Мне нужно рассчитать данные, сгруппировав их по категориям, а затем заменив пропущенные значения на 75-й процентиль.

Я нашел функцию агрегирования, которая позволяет мне делать это:

GRPAVG = aggregate(INCWAGE ~ AGE + RCE,  data = lps1, mean)

Которыйпрекрасно работает для подлости.Однако я не смог заставить работать квантиль здесь, как я могу агрегировать по 75-му процентилю?То есть я хочу сгруппировать по возрасту и расе и найти 75-й процентиль данных в этой кросс-группе.

И, кроме того, есть ли способ заменить пропущенные значения другой переменной на вывод агрегата?

1 Ответ

0 голосов
/ 12 октября 2018

aggregate имеет аргумент FUN (как вы знаете).Если функция, переданная этому аргументу, принимает больше аргументов, вы передаете их через ....Если вы рассчитываете квантили, вам нужно передать аргумент probs.

data("ChickWeight")

head(ChickWeight)
aggregate(weight ~ Chick + Diet, data = ChickWeight,
          FUN = quantile, probs = 0.75)
...