我正在寻找一种方法来确定特定产品的销售数据是否是季节性的,或者是布尔值是/否,可以作为每个产品的单独列(大约2500)。
数据框看起来像这样:
Product ID Date Sales
X 2015-01 15
Y 2015-01 12
Z 2015-01 10
X 2015-02 15
Y 2015-02 30
Z 2015-02 NA
and so on
我已将其转换为时间序列,但我无法使其适用于每种产品。
Product ID 2015-01 2015-02
X 15 15
Y 12 30
Z 10 NA
and so on
问题是我想使用包 greenbrown 和季节性功能,但它只读取单变量时间序列,我能得到的只是多变量。
如何正确创建每个产品的时间序列,然后以上述格式获得季节性?
答案 0 :(得分:0)
将其保留为原始格式,并在产品ID上拆分以仅选择特定产品。使用$
或[[
运算符选择列:
library(dplyr)
product_ids = df[["Product ID"]]
product_dfs = split( df, product_ids)
output = lapply( product_dfs, function(product_df){
is_seasonal_tuple = Seasonality( product_df$Date)
#either return or add to the product df using e.g. mutate
} )