如何使用日期作为多个日期范围的虚拟变量?



我正在研究熊猫数据框架,我需要使用多元回归分析。我使用的自变量是yyyy-mm-dd格式的日期。到目前为止,我已经明白我可以为日期使用虚拟变量。

场景描述如下:

  • 数据集中的日期来自2017-08-18 to 2019-08-12
  • 我需要计算count/products的所有日期
  • 现在我需要检查productsmean的多个日期和各自的日期范围,即,如果我采取2017-09-21,那么我需要计算products7 days before7 days after2017-09-21的平均值。现在我有mean_products_before (2017-09-15 , 2017-09-16, 2017-09-17, ..., 2017-09-21)mean_products_after(2017-09-21, 2017-09-22, 2017-09-23, ..., 2017-09-28)
  • 现在我不只有一个日期,但多个日期,我需要计算的平均值:017-09-21, 2017-09-28, 2017-10-17, 2017-11-26, 2017-12-09, and few more
  • 问题是我可以在这种情况下使用虚拟变量吗?有可能吗,或者我有其他更好的方法?目的是找出日期(自变量)是否与mean_products_beforemean_products_after(两者都是因变量)有影响或关系。

如果有什么不清楚的地方我道歉。请随时提问。

这是使用日期值获取假人的一种方法。

from datetime import datetime, timedelta, date
import pandas as pd
_date = datetime.fromisoformat('2017-08-18')
dateList=[]
for i in range(0,10):
_date += timedelta(days=1)
dateList.append(_date.date().isoformat())
pd.get_dummies(pd.Series(dateList))

输出将是。

2017-08-19  2017-08-20  2017-08-21  2017-08-22  2017-08-23  2017-08-24  2017-08-25  2017-08-26  2017-08-27  2017-08-28
0   1   0   0   0   0   0   0   0   0   0
1   0   1   0   0   0   0   0   0   0   0
2   0   0   1   0   0   0   0   0   0   0
3   0   0   0   1   0   0   0   0   0   0
4   0   0   0   0   1   0   0   0   0   0
5   0   0   0   0   0   1   0   0   0   0
6   0   0   0   0   0   0   1   0   0   0
7   0   0   0   0   0   0   0   1   0   0
8   0   0   0   0   0   0   0   0   1   0
9   0   0   0   0   0   0   0   0   0   1

相关内容

  • 没有找到相关文章

最新更新