[英]Generate Time Series in R with existing year variable
我想在时间序列变量中设置一个现有变量( year
),以用于R中的回归。
我有一个1999年至2013年国家/地区级社会经济信息的数据集(以数据框格式 )。并非每个国家/地区都有每年的观测数据。 有些涵盖了整个范围(1999-2013年)。 其他人没有。
数据如下所示:
data:
year country economy poverty
2011 Algeria 1.0814223 1.3310658
2012 Algeria 0.4172840 0.6206897
2013 Algeria 0.5652174 0.9222222
1999 Morocco 1.0814223 1.3310658
2000 Morocco 1.3310658 1.1468254
2001 Morocco 0.6206897 1.2805829
2002 Morocco 0.9222222 1.3310658
2003 Morocco 1.6500000 0.7612833
2004 Morocco 0.9126984 0.9768519
2005 Morocco 1.1388889 1.3310658
2006 Morocco 1.0500000 0.8011516
2007 Morocco 1.0458075 0.5761905
2008 Morocco 1.5017544 0.6222222
2009 Morocco 1.1666667 1.3310658
2010 Morocco 1.0527660 1.1468254
2011 Morocco 1.3611111 0.5761905
2012 Morocco 1.1666667 0.5761905
2013 Morocco 1.4137931 0.5761905
如何告诉R将这些数据视为时间序列? 我尝试了以下方法:
将整个数据帧设置为时间序列:
ts.data <- as.ts(data, start = 1999, end = 2013)
在数据集中设置时间序列变量:
data$timeseries <- ts(data$year, start = 1999, end = 2013, frequency = 1)
不幸的是,两者都不起作用。
我确定这是一个愚蠢的问题,对不起。 预先感谢您的帮助!
假设您确实确实想根据问题中的说明创建一个时间序列:
library(zoo)
z <- read.zoo(data, split = "country")
给这个"zoo"
类对象(输出后继续):
> z
economy.Algeria poverty.Algeria economy.Morocco poverty.Morocco
1999 NA NA 1.0814223 1.3310658
2000 NA NA 1.3310658 1.1468254
2001 NA NA 0.6206897 1.2805829
2002 NA NA 0.9222222 1.3310658
2003 NA NA 1.6500000 0.7612833
2004 NA NA 0.9126984 0.9768519
2005 NA NA 1.1388889 1.3310658
2006 NA NA 1.0500000 0.8011516
2007 NA NA 1.0458075 0.5761905
2008 NA NA 1.5017544 0.6222222
2009 NA NA 1.1666667 1.3310658
2010 NA NA 1.0527660 1.1468254
2011 1.0814223 1.3310658 1.3611111 0.5761905
2012 0.4172840 0.6206897 1.1666667 0.5761905
2013 0.5652174 0.9222222 1.4137931 0.5761905
或转换为"ts"
类:
tt <- as.ts(z)
注意:输入data
的可复制形式为:
Lines <- "year country economy poverty
2011 Algeria 1.0814223 1.3310658
2012 Algeria 0.4172840 0.6206897
2013 Algeria 0.5652174 0.9222222
1999 Morocco 1.0814223 1.3310658
2000 Morocco 1.3310658 1.1468254
2001 Morocco 0.6206897 1.2805829
2002 Morocco 0.9222222 1.3310658
2003 Morocco 1.6500000 0.7612833
2004 Morocco 0.9126984 0.9768519
2005 Morocco 1.1388889 1.3310658
2006 Morocco 1.0500000 0.8011516
2007 Morocco 1.0458075 0.5761905
2008 Morocco 1.5017544 0.6222222
2009 Morocco 1.1666667 1.3310658
2010 Morocco 1.0527660 1.1468254
2011 Morocco 1.3611111 0.5761905
2012 Morocco 1.1666667 0.5761905
2013 Morocco 1.4137931 0.5761905"
data <- read.table(text = Lines, header = TRUE)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.