【发布时间】:2021-11-21 21:50:31
【问题描述】:
我对 python 和 pandas 比较陌生。我有跨越多年的一系列日期的每日计数数据。数据源的勤奋程度有点不平衡,因此日常趋势不太有用。每周总结消除了大部分的障碍。
所以我想从每日日期生成连续的周数,然后继续使用 groupby 生成每周信息。
我可以使用日期时间算术获得连续的天数。如何将其转换为允许我执行以下操作的形式? dfBoth['week'] = (dfBoth['DaysDiff']) // 7
请注意,周可以跨越连续几年,因此提供一年内周数的方法没有帮助。
这是我当前的代码:
print("create sequential week number since first Sunday in 21st century")
df['dt'] = pd.to_datetime(df['date'], infer_datetime_format=True) ## string -> datetime
df['BaseDate'] = pd.to_datetime('01/02/2000', infer_datetime_format=True) ## datetime of basedate
df['DaysDiff'] = (df['dt'] - df['BaseDate']).dt.days ## days since base date
# how to convert to integer or other form that allows the following:
df['week'] = df['DaysDiff'] // 7
【问题讨论】: