【发布时间】:2019-01-16 17:56:50
【问题描述】:
我正在寻找一种在 BigQuery 中进行时间序列投影的好方法,并找到了这个方法,它可以很好地计算相关性和斜率:View Post。但这无助于将时间线延长至您的选择。
但是谁能建议一个完整的解决方案,我可以根据需要延长时间线 (x) 并使用单个查询获得 (Y) 的预测?
任何帮助将不胜感激。
【问题讨论】:
标签: time google-bigquery time-series regression projection
我正在寻找一种在 BigQuery 中进行时间序列投影的好方法,并找到了这个方法,它可以很好地计算相关性和斜率:View Post。但这无助于将时间线延长至您的选择。
但是谁能建议一个完整的解决方案,我可以根据需要延长时间线 (x) 并使用单个查询获得 (Y) 的预测?
任何帮助将不胜感激。
【问题讨论】:
标签: time google-bigquery time-series regression projection
基本思想是将模型规范左连接到生成的日期表并使用它:
WITH stats AS (
SELECT * FROM UNNEST([
STRUCT( 'a' AS model, 0.3 AS slope, 11 AS intercept ),
STRUCT( 'b', 0.2, 7)
])
)
SELECT
date,
model,
slope,
intercept,
UNIX_DATE(date) AS X,
slope * UNIX_DATE(date) + intercept AS Y
FROM
UNNEST(GENERATE_DATE_ARRAY(DATE('2018-05-01'),DATE('2018-07-01'))) AS date
LEFT JOIN stats ON TRUE
ORDER BY date ASC
我没有重复统计部分,因为它已经回答了,但是我创建了一个带有两个模型的虚拟表来替换它,模型当然也可以是一个桶,那么你必须留下加入作为一把钥匙。
我还假设您使用 unix 日期(自 1970 年 1 月 1 日以来的天数)创建了带有日期的模型,否则您需要相应地进行修改。
【讨论】: