я работаю над следующим dataframe:Итоговые данные по дате
VAL1 <- c("AA", "BB", "CC", "DD", "BB", "DD", "AA", "DD")
D01012016 <- c(2, 4, 2, 6, 8, 8, 12, 4)
D02012016 <- c(3, 3, 2, 1, 1, 2,4, 4)
D03022016 <- c(2, 2, 3, 4, 3, 5, 5, 7)
D05022016 <- c(1, 3, 3, 1, 2,3, 3, 6)
D03032016 <- c(2, 1, 1, 1, 5, 3, 2, 1)
D01042016 <- c(2, 4, 2, 6, 8, 8, 12, 4)
D02042016 <- c(3, 3, 2, 1, 1, 2,4, 4)
D03042016 <- c(2, 2, 3, 4, 3, 5, 5, 7)
D05042016 <- c(1, 3, 3, 1, 2,3, 3, 6)
D05052016 <- c(2, 3, 7, 1, 1, 1, 1, 1)
D23062016 <- c(2, 1, 1, 1, 5, 3, 2, 1)
D05072016 <- c(1, 3, 3, 1, 2,3, 3, 6)
D03082016 <- c(2, 1, 1, 1, 5, 3, 2, 1)
D01092016 <- c(2, 4, 2, 6, 8, 8, 12, 4)
D12092016 <- c(3, 3, 2, 1, 1, 2,4, 4)
D05102016 <- c(2, 1, 1, 1, 5, 3, 2, 1)
D21112016 <- c(2, 4, 2, 6, 8, 8, 12, 4)
D13122016 <- c(3, 3, 2, 1, 1, 2,4, 4)
df <- data.frame(D01012016, D02012016, D03022016,D05022016,D03032016,D01042016,D02042016,D03042016,D05042016,D05052016,D23062016,D05072016,D03082016,D01092016,D12092016,D05102016,D21112016,D13122016)
COLNAMES являются даты в формате Dddmmyyyy, мне нужно сгруппировать данные, mantaining в первом столбце VAL1
(повторяющиеся значения VAL должны оставаться разделены) и группировать его ежемесячные значения (второе colnames
on должно быть именем месяца, а данные должны быть агрегированы с помощью функции sum()). Конечный набор данных должен иметь одинаковое количество строк (и все VAL1 должно находиться в одном и том же положении) и иметь только 12 столбцов (один в месяц)
Что вы подразумеваете под агрегированным? Каков ваш ожидаемый результат? Кроме того, должно быть много ответов на агрегирование данных временных рядов в R. – Gopala
@Gopala, Получить один столбец за каждый месяц (в случае монтирования) или по одному за каждый квартал (ежеквартально). Я знаю, я просто новичок с R, и я не нашел ничего, где мне приходилось собирать по кодам, и в каких датах был символ до реальной даты –
@ZheyuanLi, привет! :) Нет, исходный dataframe должен измениться только для числа столбцов, дневные значения должны быть группами по месяцам с помощью sum(). Таким образом, количество строк останется неизменным, но столбцы будут только 12 –