使用R的数据集中按月份计数的条件Agreegate
我有一个数据框,列值为Job_code、Months、Days 我需要将月份与(60)等天的条件进行聚合 普通的聚合函数只提供每月使用函数聚合的数据(但我看不到这种条件聚合) 输入数据:使用R的数据集中按月份计数的条件Agreegate,r,aggregate,aggregate-functions,R,Aggregate,Aggregate Functions,我有一个数据框,列值为Job_code、Months、Days 我需要将月份与(60)等天的条件进行聚合 普通的聚合函数只提供每月使用函数聚合的数据(但我看不到这种条件聚合) 输入数据: df <- data.frame( 'Job Code' = c(1,1,8,9,1,1,2,3,4,2,3,4,5,6,7,5,6,7,2,3,4,8,4), 'Months' = c('Apr', 'May','Mar','Jan','Feb','Jun
df <- data.frame(
'Job Code' = c(1,1,8,9,1,1,2,3,4,2,3,4,5,6,7,5,6,7,2,3,4,8,4),
'Months' = c('Apr', 'May','Mar','Jan','Feb','Jun','Jul','Aug','Sep','Dec','Nov','Oct','Oct','Nov','Sep','Jun','Jul','Apr','Mar','May','Jan','Feb','Dec'),
'Days' = c(30,30,60,80,30,30,60,80,30,30,60,80,30,30,60,80,40,50,90,60,80,40,50)
)
请原谅,因为一旦我点击“保存”或“提交”,它就会被更改
输出列必须类似于月份,60天,计数按月份进行聚合您可以在数据框本身中创建一个
组
列,然后根据该列进行计数:
df$组
Months 0-30 30-60 >60 Total
Jan 0 0 2 2
Feb 1 1 0 2
Mar 0 1 1 2
Apr 1 1 0 2
May 1 1 0 2
Jun 1 0 1 2
Jul 0 2 0 2
Aug 0 0 1 1
Sep 1 1 0 2
Oct 1 0 1 2
Nov 1 1 0 2
Dec 1 1 0 2
Total 8 2 5 23
table(df$Months, df$group)
>60 0-30 30-60
Apr 0 1 1
Aug 1 0 0
Dec 0 1 1
Feb 0 1 1
Jan 2 0 0
Jul 0 0 2
Jun 1 1 0
Mar 1 0 1
May 0 1 1
Nov 0 1 1
Oct 1 1 0
Sep 0 1 1