首页 > 解决方案 > 取消嵌套一个 ts 类

问题描述

我的数据有多个具有不同开始和结束日期的客户数据以及他们的销售数据。所以我做了简单的指数平滑。我应用了以下代码来申请ses

library(zoo)
library(forecast)

z <- read.zoo(data_set,FUN = function(x) as.Date(x) + seq_along(x) / 10^10 , index = "Date", split = "customer_id")
L <- lapply(as.list(z), function(x) ts(na.omit(x),frequency = 52))
HW <- lapply(L, ses)

现在我的输出类的list长度不均匀。有人可以帮助我如何将输出取消嵌套或取消列出到数据框中并获取拟合值、实际值、残差以及它们的日期、销售额和客户 ID。注意:我发布输入数据而不是数据的HW原因是,HW数据太大。有人可以在 R 中帮助我吗?

标签: rdataframetime-seriesexponentialunnest

解决方案


我会使用tidyverse包来处理这个问题。

map(HW, ~ .x %>% 
      as.data.frame %>%             # convert each element of the list to data.frame
      rownames_to_column) %>%       # add row names as columns within each element
  bind_rows(.id = "customer_id")    # bind all elements and add customer ID

我不确定如何将日期和实际销售额与您的输出相关联(HW)。如果你解释它,我也可能会为这部分问题提供解决方案。


推荐阅读