Я изучал это некоторое время, и я не могу найти проблему.Я регулярно использую dplyr, но, похоже, неожиданно я получаю странный вывод из комбинации group_by / sumrize.
У меня большой набор данных, и я пытаюсь обобщить его, используя следующее:
dataAgg <- dataRed %>% group_by(ClmNbr, SnapshotDay, Pre2016) %>%
filter(SnapshotDay == '30'| SnapshotDay == '90') %>%
summarise(
NumFeat = sum(FeatureNbr),
TotInc = sum(IncSnapshotDay),
TotDelta = sum(InctoFinal),
TotPaid = sum(FinalPaid)
)
Ниже приведены настройки фрейма данных:
'data.frame': 123819 obs. of 8 variables:
$ ClmNbr : Factor w/ 33617 levels "14-00765132",..: 2162 2163 2163 2164 1842 2287 27 27 27 28 ...
$ SnapshotDay : Factor w/ 3 levels "7","30","90": 1 1 1 1 1 1 1 1 1 1 ...
$ Pre2016 : Factor w/ 2 levels "Post2016","Pre2016": 2 2 2 2 2 2 2 2 2 2 ...
$ FeatureNbr : int 6 2 3 3 6 2 4 5 6 5 ...
$ IncSnapshotDay: num 5000 77 5000 4500 77 2200 1800 1100 1800 25000 ...
$ FinalPaid : num 442 0 15000 5000 0 ...
$ InctoFinal : num -4558 -77 10000 500 -77 ...
$ TimeDelta : num 25.833 2.833 2.833 0.833 1.833 ...
Когда я выполняю код, я получаю 1 шт.из 4 переменных;группировка не применяется.
'data.frame': 1 obs. of 4 variables:
$ NumFeat : int 287071
$ TotInc : num NA
$ TotDelta: num NA
$ TotPaid : num 924636433
Раньше я делал это без проблем.
Я мог бы использовать агрегат, но иногда я смешиваю и сопоставляю функции на основе столбца, поэтому он не всегда работает.
Что я делаю не так?