Я хочу взять набор данных и разбить его на несколько наборов данных. Для упрощенной версии проблемы. Реально у меня будет тысячи строк, но я хотел бы упростить задачу для понимания. Предположим, у вас есть следующий код:
vec = c(1:10)
df = data.frame(vec)
df
vec
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 10
Я хотел бы разбить этот набор данных на строки по 5 наблюдений каждый, а затем получить среднее значение для каждых 5 строк.
Пока япопытался разделить код следующим образом:
splitdf = split(df, rep(1:2,each = 5))
Теперь я хотел бы получить среднее значение для каждой группы. Например, среднее значение для первого фрагмента равно 3, а для второго - 8.
Затем я хотел бы сделать функцию повторения и сохранить ее в отдельном столбце. Я хочу, чтобы мой фрейм данных выглядел следующим образом:
vec mean
1 1 3
2 2 3
3 3 3
4 4 3
5 5 3
6 6 8
7 7 8
8 8 8
9 9 8
10 10 8
Мне было интересно, подойдет ли функция цикла или есть более простой способ решения этой проблемы. Я открыт для предложений.