简体   繁体   English

用R中的循环创建时间序列

[英]create time series with a loop in R

I have a question regarding a loop based setting for time series. 我有一个关于基于时间序列的循环设置的问题。 I first load a data frame: 我首先加载一个数据帧:

DataR <- read.csv("XXX/R_Input_CSVs/DataR.csv", sep=";")

I would like to use a loop to generate one time series of each column in DataR. 我想使用循环来生成DataR中每一列的一个时间序列。 My time series should have the name of the corresponding column: 我的时间序列应具有对应列的名称:

Baugewerbe<-ts(DataR$Baugewerbe,freq=4,start=c(1991,3),end=c(2014,3))
Gastgewerbe<-ts(DataR$Gastgewerbe,freq=4,start=c(1991,3),end=c(2014,3))
Handel<-ts(DataR$Handel,freq=4,start=c(1991,3),end=c(2014,3))

...and so on ...等等

for(i in 1:ncol(DataR)){
names(DataR[i])<-ts(DataR[,i],freq=4,start=c(1991,3),end=c(2014,3))
}

Unfortunately the code doesn^t work. 不幸的是,该代码无法正常工作。 What do i have to change? 我必须改变什么? Thanks in advance 提前致谢

You could try 你可以试试

list2env(setNames(lapply(DataR, function(x) 
    ts(x, freq=4, start=c(1991,3), end=c(2014,3)), names(DataR)), 
             envir=.GlobalEnv)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM