Python 在DateTime模块中设置一周的明确开始时间
我一直在搜索SO和pandas文档,但收效甚微 我正试图找到一种方法,在datetime中设置一个明确的开始时间和结束时间 基本上我希望我的一周从周六开始,周五结束 采取以下措施:Python 在DateTime模块中设置一周的明确开始时间,python,pandas,Python,Pandas,我一直在搜索SO和pandas文档,但收效甚微 我正试图找到一种方法,在datetime中设置一个明确的开始时间和结束时间 基本上我希望我的一周从周六开始,周五结束 采取以下措施: import pandas as pd data = {'Dates' : ['2018-10-20', '2018-10-19']} df = pd.DataFrame(data) print(df) Dates 0 2018-10-20 1 2018-10-19 如果
import pandas as pd
data = {'Dates' : ['2018-10-20', '2018-10-19']}
df = pd.DataFrame(data)
print(df)
Dates
0 2018-10-20
1 2018-10-19
如果我使用dt.week,我得到
df['Week'] = df.Dates.dt.week
print(df)
Dates Week
0 2018-10-20 42
1 2018-10-19 42
19号是星期五,20号是星期六
我期望的输出是
df['Week'] = df.Dates.dt.week
print(df)
Dates Week
0 2018-10-20 43
1 2018-10-19 42
有没有一种方法可以使用pandas本机功能实现这一点,或者需要一个功能?您可以添加2天
(df.Dates+pd.Timedelta(days=2)).dt.week
Out[215]:
0 43
1 42
Name: Dates, dtype: int64
您可以切换
2
天:
df['Week'] = pd.DatetimeIndex(df['Dates']).shift(2, freq='d').week
print(df)
Dates Week
0 2018-10-20 43
1 2018-10-19 42
谢谢温家宝,这两种解决方案都有效,而且似乎同样雄辩,所以我将绿色勾选第一个答案。谢谢你,你就是那个人。我才意识到你的答案是第一个。。对不起@Wen BenThanks!算了吧,你是明星耶斯雷尔。