Python 熊猫数据帧。重采样(';MS';)
我想知道是否有人能帮助我理解我可能会错在哪里。我有一个数据框,其中包含缺少月份的数据(零件号、每月销售额、年份),我正在尝试使用dataframe.resample('MS').asfreq()来识别缺少的月份并将其插入我的列表中。我以前执行过分组,以确保在重新采样之前收集数据。 我的代码是:Python 熊猫数据帧。重采样(';MS';),python,pandas,Python,Pandas,我想知道是否有人能帮助我理解我可能会错在哪里。我有一个数据框,其中包含缺少月份的数据(零件号、每月销售额、年份),我正在尝试使用dataframe.resample('MS').asfreq()来识别缺少的月份并将其插入我的列表中。我以前执行过分组,以确保在重新采样之前收集数据。 我的代码是: df2=df1[['Part_ID','Order_Qty','Extended_Price','Month','Month1','Year']] df2['Month1'] = pd.to_dateti
df2=df1[['Part_ID','Order_Qty','Extended_Price','Month','Month1','Year']]
df2['Month1'] = pd.to_datetime(df2.Month.astype(str) +'-01-'+ df2.Year.astype(str))
df2=df2.set_index(pd.DatetimeIndex(df2['Month1']))
df2=df2.groupby([df2['Part_ID'],df2['Year']])
df2=df2['Month1'].resample('MS').asfreq()
df3=df2.to_frame()
print(df3)
df4=df3.reset_index()
在执行之后,增加了几个月,但缺少了一些。谁能解释一下原因吗
重采样后的输出为:
Part_ID Year Month1
08095601/2 2014 2014-07-01 2014-07-01
2014-08-01 2014-08-01
2014-09-01 2014-09-01
2014-10-01 2014-10-01
2014-11-01 2014-11-01
2015 2015-01-01 2015-01-01
2015-02-01 2015-02-01
2015-03-01 2015-03-01
2015-04-01 2015-04-01
2015-05-01 2015-05-01
2015-06-01 2015-06-01
08095601/5 2014 2014-07-01 2014-07-01
2014-08-01 2014-08-01
2014-09-01 2014-09-01
...
ZZSSL 2007 2007-10-01 2007-10-01
2007-11-01 NaT
2007-12-01 2007-12-01
2008 2008-01-01 2008-01-01
2008-02-01 2008-02-01
2008-03-01 2008-03-01
2008-04-01 2008-04-01
2008-05-01 2008-05-01
2008-06-01 2008-06-01
2008-07-01 NaT
2008-08-01 NaT
2008-09-01 2008-09-01
2008-10-01 2008-10-01
2009 2009-01-01 2009-01-01
2009-02-01 2009-02-01
2009-03-01 2009-03-01
2009-04-01 2009-04-01
2009-05-01 2009-05-01
2009-06-01 2009-06-01
2009-07-01 2009-07-01
bracket 2014 2014-07-01 2014-07-01
2014-08-01 2014-08-01
2014-09-01 2014-09-01
2014-10-01 2014-10-01
2014-11-01 2014-11-01
2014-12-01 2014-12-01
2015 2015-01-01 2015-01-01
2015-02-01 NaT
2015-03-01 NaT
2015-04-01 2015-04-01
如您所见,对于2014年的08095601/2部分,没有第12个月,对于ZZSSL部分,没有第11个月或第12个月。括号已正确插入2015年第2个月和第3个月
请给我指点