我有一张包含以下数据的Excel工作表:144列,名称为标题,729个值(随时间返回) - 见图片。我通过ts管理并分解函数来分解一列(如果文件只有一列)。一次读取整个文件时,如何分别分解每列?所以我一次性分别为每一列提供每个季节性组件。我找不到一种方法来既可以一次完成整张纸,也可以只选择一列。
我的数据:
R中的输出:
R中的输出图:
作为最后一步,我让R从原始数据中扣除季节性:
到目前为止我的命令:
ts_svi = ts(svi, frequency = 7)
decompose_svi = decompose(ts_svi, type = "additive")
adjust_svi=ts_svi - decompose_svi$seasonal
adjust_svi
答案 0 :(得分:0)
我遇到了相同的问题,并通过在系列名称上使用lapply来解决它(必须指定):
colnames(ts) <- someNames
ts_dec <- lapply(colnames(ts), function(x) {decompose(ts[, x], type = "additive")})
或者,使用对象名称:
decompose_svi <- lapply(colnames(ts_svi), function(x) {decompose(ts_svi[, x], type = "additive")})
结果将是一个很大的清单,但您将能够获得所有季节性数据。希望对您有所帮助。