Python 如何获得两次约会之间的所有周数?
我有一个数据帧,只是\u日期: 和我计算的数据帧周数Python 如何获得两次约会之间的所有周数?,python,pandas,Python,Pandas,我有一个数据帧,只是\u日期: 和我计算的数据帧周数 df['weeks'] = pd.PeriodIndex(df.just_dates, freq='W') 周看起来像: 0 2002-12-30/2003-01-05 1 2015-10-26/2015-11-01 2 2015-10-26/2015-11-01 16 2015-11-02/2015-11-08 33 2015-11-02/2015-11-08 44 2015-11-02/2015-11-08
df['weeks'] = pd.PeriodIndex(df.just_dates, freq='W')
周看起来像:
0 2002-12-30/2003-01-05
1 2015-10-26/2015-11-01
2 2015-10-26/2015-11-01
16 2015-11-02/2015-11-08
33 2015-11-02/2015-11-08
44 2015-11-02/2015-11-08
现在我想要一个数据框,包含第一周和最后一周之间的所有周,因此所有周应如下所示:
0 2002-12-30/2003-01-05
1 2003-01-06/2003-01-12
2 2003-01-13/2003-01-19
...
2015-10-26/2015-11-01
2015-10-26/2015-11-01
2015-11-02/2015-11-08
2015-11-02/2015-11-08
2015-11-02/2015-11-08
有没有简单的方法可以做到这一点?使用:
[外]
我使用了所有的周数=pd.DataFramepd.period _range开始=df.weeks.min,结束=df.weeks.max,并成为2003-01-05和2015-11-08之间的日期。出了什么问题?您的预期输出是什么?嗯,您使用的是什么版本的熊猫?我运行了上面的程序,得到了使用0.24.2的输出-可能只需要升级:pip install pandas-U的终端版本是'0.22.0'。好的,我试试!我不确定,是否有助于密切关注,有时版本之间会发生类似这样的细微变化
0 2002-12-30/2003-01-05
1 2003-01-06/2003-01-12
2 2003-01-13/2003-01-19
...
2015-10-26/2015-11-01
2015-10-26/2015-11-01
2015-11-02/2015-11-08
2015-11-02/2015-11-08
2015-11-02/2015-11-08
pd.DataFrame(pd.period_range(start=df.weeks.min(),
end=df.weeks.max(),
freq='W'))
0
0 2002-12-30/2003-01-05
1 2003-01-06/2003-01-12
2 2003-01-13/2003-01-19
3 2003-01-20/2003-01-26
4 2003-01-27/2003-02-02
5 2003-02-03/2003-02-09
.. ...
665 2015-09-28/2015-10-04
666 2015-10-05/2015-10-11
667 2015-10-12/2015-10-18
668 2015-10-19/2015-10-25
669 2015-10-26/2015-11-01
670 2015-11-02/2015-11-08
[671 rows x 1 columns]