繁体   English   中英

在R中的多个列上进行季节性分解

[英]Running a seasonal decomposition on multiple columns in R

我正在学习用R编写代码,一直在努力使工作变得非常简单。 我有一个包含产品价格的数据库,每个列代表一个产品的时间序列。 我想在每列上运行时间序列的季节性分解,并在以产品名称分隔的列表中获得结果。

当我运行下面的代码时,出现错误:

Assign(paste(j),x [j])<-(stl(dados_resumo [,x],s.window =“ periodic”))中的错误:找不到函数“ assign <-”

for (i in 1:3)
{
    x <- (i)
    for(j in colnames(df)){
    assign(paste(j), x[j]) <- (stl(df[,x], s.window="periodic"))
    }
} 

我不确定您的数据框是什么样子,因此我将手动进行介绍。

首先,assign不是函数,这正是错误告诉您的。

for( i in 1:length( df ) )
{
   df$stl[i] <- stl( df[,i], s.window = "periodic" )
}

'assign <-'不是函数,但是'assign'是; 例如,它以assign(varname,varvalue,environment)的形式使用,如果要在全局环境中将值“ bigworld”分配给名为x的变量,则可以使用

assign(x,"bigworld",envir=.GlobalEnv)

可以将envir设置为envir = .GlobalEnv,以便即使在堆栈或调用链深处的函数中,也可以在全局环境中将值分配给var

等式

 x = a 

要么

 x <- a

也可以用于赋值,但是在函数内部,这不会全局影响值,一旦返回函数,将x删除

暂无
暂无

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

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