Как агрегировать широкоформатную таблицу данных в R - PullRequest
0 голосов
/ 20 февраля 2020

У меня есть широкоформатная таблица данных df вида:

CONTRACT_NO CUSTOMER_NO V1_201201 V1_201202 V2_201201 V2_201202 
1           1           4         4         100       90
2           1           5         5         200       110

Я хочу агрегировать таблицу по CUSTOMER_NO и взять максимум столбцов V1 и сумму столбцов V2. Пробовал с dcast, агрегат, но безрезультатно.

dcast(df, CUSTOMER_NO ~ colnames(df)[grepl("V" ,colnames(df))], value.var = colnames(df)[grepl("V" ,colnames(df))], fun = c(max, sum))

В приведенном выше примере на моем фактическом наборе данных приведено следующее:

Error in setDT(dat) : 


All elements in argument 'x' to 'setDT' must be of same length, but the profile of input lengths (length:frequency) is: [134:1, 135402:135]
The first entry with fewer than 135402 entries is 2

Любые идеи будут очень полезны. Спасибо!

...