Расчеты после агрегатной функции - PullRequest
0 голосов
/ 16 мая 2018

Я хотел бы вычислить меру с данными, которые у меня есть.

Итак, я начал с вычисления средней прибыли на человека с помощью этой функции: совокупный (прибыль ~ субъектив, AER, среднее)

То, что я хочу получить, является средством индивидуальной меры. Это означает, что для каждого человека я хотел бы получить среднее значение средней прибыли на предмет.

Здесь я попробовал что-то, что дает мне среднее значение прибыли по предмету, но не совсем соответствует моим потребностям.

aggregate(profit ~ subjectid, AER, mean)

Поскольку в моем наборе данных 936 человек, я получаю 936 строк (одна средняя прибыль для каждого субъекта). Затем я хотел бы вычесть число из этого (скажем, произвольное 4) для каждой строки. А затем вычислите все это среднее значение для всего моего набора данных.

aggregate(profit ~ subjectid, AER, mean)

subjectid      profit
1           1  3.2
2           2  0.3
3           3  2.2
4           4  3.0
5           5  3.0
6           6  1.2
...         ...

Например, вычисление для этих 6 строк будет:

mean((3.2-4)+(0.3-4)+(2.2-4)+(3-4)+(3-4)+(1.2-4))

Итак, ожидаемый результат в конце - просто число.

Спасибо за вашу помощь!

1 Ответ

0 голосов
/ 16 мая 2018

aggregate - соответствующая функция.По данным mtcars, если вы хотите взять среднее число миль на галлон по количеству цилиндров (в качестве прокси для отдельных лиц в вашем наборе данных), вы можете использовать это.См. ?mtcars для описания этого набора данных;это полезно для обеспечения воспроизводимых примеров.

    aggregate(mpg ~ cyl, data=mtcars, FUN=mean)
...