如何使用R对时间序列的长列表进行分段?

时间:2017-04-29 03:03:25

标签: r time-series analytics

我有一个国家/地区数据的数据集,其中包含一长串列表中列出的大量信息,但我想重新排列数据,以便在宽度方面对时间序列图表有效。

我现在拥有的一个例子:

Value   Year    Indicator   Country
500     2015    GDP         Germany
450     2014    GDP         Germany
400     2013    GDP         Germany
350     2012    GDP         Germany
300     2011    GDP         Germany
800     2015    GDP         China
750     2014    GDP         China
735     2013    GDP         China
700     2012    GDP         China
360     2011    GDP         China
900     2015    GDP         Italy
670     2014    GDP         Italy
550     2013    GDP         Italy
430     2012    GDP         Italy
200     2011    GDP         Italy

我希望它看起来如何:

Year    Germany China   Italy
2015    500     800     900
2014    450     750     670
2013    400     735     550
2012    350     700     430
2011    300     360     200

我应该考虑做什么功能吗?我已经研究过melt()和reshape(),但是我对于如何在给定数据布局的情况下继续它们有点不清楚。

我非常感谢任何人的帮助。提前谢谢。

1 个答案:

答案 0 :(得分:0)

您可以使用R.中的tidyverse包中的spread函数。假设您的datasetname是country_gdp

country_gdp[,-3] %>% spread(Country,Value)