背景资料:
我正在处理一些气候数据,我想使用包含气候和卫星衍生特征的数据集来预测作物产量。
这是一个时间序列回归预测问题,我想通过 XGBoost 和 Lasso 来生成我的预测。但是,我的特征和目标变量之间的采样频率不匹配;每周记录特征,每年记录目标变量。
目前,我使用宽格式表作为 ML 模型的输入数据集,但我觉得当输入表采用宽格式格式化时,我的模型无法生成准确的预测,因为比较的样本较少如果我使用长格式表。
数据表参考:
作为参考,宽格式表看起来像这样,其中后缀表示功能上的周数:
ID | 年 | 作物产量 | 沉淀1 | 沉淀2 | 沉淀3 | 最大温度1 | 最大温度2 | 最大温度3 |
---|---|---|---|---|---|---|---|---|
1100 | 2000 | 32.1 | 5.3 | 3.0 | 3.1 | 13.3 | 15.3 | 3.1 |
1100 | 2001年 | 31.6 | 6.6 | 3.2 | 1.1 | 11.3 | 12.3 | 6.1 |
5903 | 2000 | 41.2 | 3.4 | 0.5 | 2.1 | 10.3 | 18.3 | 8.1 |
5903 | 2001年 | 27.7 | 1.7 | 3.8 | 8.1 | 12.3 | 16.3 | 5.1 |
长格式表看起来像这样:
ID | 年 | 作物产量 | 星期 | 沉淀 | 最大温度 |
---|---|---|---|---|---|
1100 | 2000 | 32.1 | 1 | 5.3 | 13.3 |
1100 | 2000 | 32.1 | 2 | 3.0 | 15.3 |
1100 | 2000 | 32.1 | 3 | 3.1 | 3.1 |
1100 | 2001年 | 31.6 | 1 | 6.6 | 11.3 |
1100 | 2001年 | 31.6 | 2 | 3.2 | 12.3 |
1100 | 2001年 | 31.6 | 3 | 1.1 | 6.1 |
5903 | 2000 | 41.2 | 1 | 3.4 | 10.3 |
5903 | 2000 | 41.2 | 2 | 0.5 | 18.3 |
5903 | 2000 | 41.2 | 3 | 2.1 | 8.1 |
5903 | 2001年 | 27.7 | 1 | 1.7 | 12.3 |
5903 | 2001年 | 27.7 | 2 | 3.8 | 16.3 |
5903 | 2001年 | 27.7 | 3 | 8.1 | 5.1 |
问题:
是否建议使用长格式表作为我的 ML 模型的输入?我觉得每个相关 ID 和年份的相同作物产量会让我的模型失望。
此外,是否有更好的方法来构建我尚未探索的数据?