我有如下表:如何通過歸類爲財政季度日期來計算平均
Date Country Class Value
6/1/2010 USA A 45
6/1/2010 Canada A 23
6/1/2010 Brazil B 65
9/1/2010 USA B 47
9/1/2010 Canada A 98
9/1/2010 Brazil B 25
12/1/2010 USA B 14
12/1/2010 Canada A 79
12/1/2010 Brazil A 23
3/1/2011 USA A 84
3/1/2011 Canada B 77
3/1/2011 Brazil A 43
6/1/2011 USA A 45
6/1/2011 Canada A 23
6/1/2011 Brazil B 65
9/1/2011 USA B 47
9/1/2011 Canada A 98
9/1/2011 Brazil B 25
12/1/2011 USA B 14
12/1/2011 Canada A 79
12/1/2011 Brazil A 23
3/1/2012 USA A 84
3/1/2012 Canada B 77
3/1/2012 Brazil A 43
在列「日期」年通過接下來的幾個月劃分 - 三月,六月,九月和十二月。我需要將從6月到3月的月份分組爲一個會計年度,並按各會計年度計算「國家」和「類別」列的「價值」的平均值。有人能幫我做到嗎?
我試圖做到這一點使用data.table但得到的錯誤:
d=data[,list(Val=mean(Value,na.rm=T)),by=list(Country,Class,
Period.grp=cut(Period,list(6/1/2010,3/1/2011,6/1/2011,3/1/2012,
6/1/2012,3/1/2013,6/1/2013,3/1/2014)))]
錯誤cut.default(期間,列表(2010/6/1,2011/3/1,6/1/2011,2012/3/1,: 「X」必須是數字
謝謝
我敢肯定,這已被要求,並...你做了什麼搜索之前回答? – 2014-11-01 00:37:58
那麼2010年1月或2010年1月的2010年應該如何呢? – 2014-11-01 00:59:06
您的方法存在的問題是,您正在創建的數據類型沒有cut()函數。如果他們沒有被解析爲分區,那麼這些將成爲角色。請注意,列表(2010年6月1日)返回小數部分。那些不是R日期。在數據框中也沒有'Period'列。 – 2014-11-01 04:14:17