новичок в R, я использую его для анализа НФЛ в кадре данных, где соответствующие столбцы выглядят так:
- Рэнди Мосс 12,9 2000
- Рэнди Мосс 21,6 2000
- Рэнди Мосс 4.0 2000
- Рэнди Мосс 44.7 2000
- Рэнди Мосс 25.8 2000
- Рэнди Мосс 12.9 2000
это не list, это информационный фрейм, где столбцы фэнтези игрока ("fname.1") для каждой игры ("fp3") и год игры ("year") - это рассматриваемые столбцы. Эти данные включают все годы, начиная с 2000-2019 гг.
Я хочу добавить столбец, который является средним значением всех фантазийных результатов за этот год для этого игрока. Итак, мой требуемый вывод в данных примера (если Рэнди Мосс сыграл только 6 игр) добавит столбец среднего значения для каждой записи, например:
- Рэнди Мосс 12.9 2000 16.98333
- Рэнди Мосс 21,6 2000 16,98333
- Рэнди Мосс 4,0 2000 16,98333
- Рэнди Мосс 44,7 2000 16,98333
- Рэнди Мосс 25,8 2000 16,98333
- Рэнди Мосс 12,9 2000 16.98333
У меня проблемы с использованием простой формулы group_by () и summaze () из-за необходимости разного среднего значения для каждого игрока на каждый год. Я написал для l oop, который создает список с необходимой мне информацией, но я не уверен, как добавить это в исходные данные или есть ли более простой способ выполнить sh это ...
mean_fantasy <- list()
for(y in 2000:2019) {
mean_fantasy[[y]] <- offense_test %>%
filter(year == y) %>%
group_by(fname.1) %>%
summarize(mean_fp3 = sum(fp3)/n(), games = n(), year = sum(year)/n())
}
Очень плохо знаком с R и этим форумом, так что, надеюсь, этот вопрос / форматирование имеет смысл