具有多个主题和多个变量的时间序列

机器算法验证 r 回归 时间序列 多重回归 Python
2022-04-09 16:47:34

我是一名网络开发人员和新手统计学家。

我的数据看起来像这样

Subject  Week   x1  x2  x3  x4  x5  y1
A        1      .5  .6  .7  .8  .7  10
B        1      .3  .6  .2  .1  .3  8
C        1      .3  .1  .2  .3  .2  6  
A        2      .1  .9  1.5 .8  .7  5
B        2      .3  .6  .3  .1  .3  2
D        2      .3  .1  .4  .3  .5  10  

我试图将 y1 预测为 x 变量的乘积。但是,我有理由相信多个 x 变量对 y1 的影响可能存在滞后,即第 1 周的 x 变量对受试者 A 的影响 y1 在第 2 周对受试者 A 的影响。

请注意,并非所有受试者每周都会有数据点(事实上大多数不会)。受试者往往会有第 1、2、3、4 周的数据点,然后下降,直到第 7、8、9 周才再次出现。鉴于我关于滞后的假设,我愿意将我的分析限制在我们拥有前 N 周数据的数据点上。

就像我说的,我是新手,不确定处理这种形式的数据集的最佳方法。我希望在 R、Python 或两者的某种组合中进行这种分析。我认为本周的 x 变量不会有任何影响。我认为它们会产生一些影响,也许比前几周更大。我只是相信前几周会产生一些影响。

我预计会有两到三周的延迟。为了提供一些背景信息,我在这里尝试的分析与判断在线流量的质量有关。每周我都会对我发送到给定网站的特定用户流的质量进行评分。我正在尝试查找辅助指标,例如浏览器分布、重复点击百分比等,这将使我能够提前预测该分数。

2个回答

正如我在上面的注释中提到的,我会将其视为回归问题。这是在 R 中从您的数据 ( R Head ) 构建滞后(和领先)变量的链接。

帖子中包含在回归模型中使用结果数据的简要介绍。您可能还想对 R 包 dynlm(动态线性回归)进行一些背景挖掘。

您可以创建 y1 偏移 0、1、2、3、4 周的表格。

然后你对它们进行分析。例如,您可以创建一个神经网络,尝试从 x 预测 y1。对于一些想法,您可以试一试 Weka

然后,您可以从 x 中预测每个滞后的 y1。使用它,您可以找到最适合的延迟。


或者,您可以创建一个表,其中包括本周的 x、前一周的 x、...和 ​​y1。然后进行影响分析(例如PCA),看看哪一周和哪个变量的影响最大。