如何在Pandas DataFrame中为ww列每7天赋值相同且逐周递增的数字
实现代码
import pandas as pd # 1. 将date列转换为datetime格式,避免字符串日期计算出错 df['date'] = pd.to_datetime(df['date']) # 2. 定义周期计算的基准起始日 start_date = pd.to_datetime('2020-01-21') # 3. 按规则计算ww列:每7天数值+1,第一周(1.21-1.27)为1 df['ww'] = (df['date'] - start_date).dt.days // 7 + 1
补充说明
- 如果你的数据中存在早于
2020-01-21的日期,可以额外加条件调整这部分的ww值,示例:
# 把早于起始日的ww设为空值/0,按需调整即可 df.loc[df['date'] < start_date, 'ww'] = pd.NA
内容的提问来源于stack exchange,提问作者Aaron
相关产品推荐
相关产品推荐

