感谢joran帮助我在我的previous question中对数据进行分组,我想在R中创建一个较小的数据框,以便我可以对数据进行时间序列分析。
现在我想实际进一步从数据框中提取数据。数据框由6列组成。第1列至第5列各自具有不同的名称/值,例如区,性别,年,月和年龄组。第六列是该特定组合的死亡计数。提取物看起来像这样:
District Gender Year Month AgeGroup TotalDeaths
Northern Male 2006 11 01-4 0
Northern Male 2006 11 05-14 1
Northern Male 2006 11 15+ 83
Northern Male 2006 12 0 3
Northern Male 2006 12 01-4 0
Northern Male 2006 12 05-14 0
Northern Male 2006 12 15+ 106
Southern Female 2003 1 0 6
Southern Female 2003 1 01-4 0
Southern Female 2003 1 05-14 3
Southern Female 2003 1 15+ 136
Southern Female 2003 2 0 6
Southern Female 2003 2 01-4 0
Southern Female 2003 2 05-14 1
Southern Female 2003 2 15+ 111
Southern Female 2003 3 0 2
Southern Female 2003 3 01-4 0
Southern Female 2003 3 05-14 1
Southern Female 2003 3 15+ 141
Southern Female 2003 4 0 4
我是时间序列的新手,我想我需要这样做来分析数据:我需要提取较小的'时间序列'数据对象,这些数据对象是唯一的纵向数据。例如,从上面的数据框中,我想为每个区,性别和年龄组提取这样的较小数据对象:
District Gender Year Month AgeGroup TotalDeaths
Northern Male 2003 1 01-4 0
Northern Male 2003 2 01-4 1
Northern Male 2003 3 01-4 0
Northern Male 2003 4 01-4 3
Northern Male 2003 5 01-4 4
Northern Male 2003 6 01-4 6
Northern Male 2003 7 01-4 5
Northern Male 2003 8 01-4 0
Northern Male 2003 9 01-4 1
Northern Male 2003 10 01-4 2
Northern Male 2003 11 01-4 0
Northern Male 2003 12 01-4 1
Northern Male 2004 1 01-4 1
Northern Male 2004 2 01-4 0
转到
Northern Male 2006 11 01-4 0
Northern Male 2006 12 01-4 0
我在Excel中尝试过一些东西,用这些数据创建数据透视表,然后尝试提取信息字符串 - 但失败了。之后我在R中发现reshape
,但我要么不知道代码,要么不应该使用reshape
来执行此操作。
我甚至不确定这是否是分析这个横截面时间序列数据的正确/方法,即。如果使用read.ts()
,ts()
和arima()
等功能分析此数据实际需要其他格式。
我最终的目标是使用这些数据和amelia2
软件包及其功能来估算2007年和2008年某些月份遗失的TotalDeaths
,其中数据当然缺失。
任何帮助,如何做到这一点以及如何解决这个问题的建议都将不胜感激。
答案 0 :(得分:0)
关于如何最佳提取的狭隘问题:
subset(dfrm, subset=(District=="Northern" & Gender=="Male" & AgeGroup=="01-4"))
subset
还有一个select参数来缩小列。我怀疑对你正在使用的术语“提取”的搜索只会提取“提取”页面的命中,这个页面出乎意料地没有链接到subset
。 (我从早期版本的AgeGroup规范中修剪了一个尾随空格。)