根据23年的日期列,生成周字段,周规则为每周六到周五为一周,2023年第一周为2022年12月31日至2023年1月6日, 用pandas 来写
时间: 2024-03-02 13:48:04 浏览: 103
好的,根据您的要求,我可以给您提供一个使用 Pandas 来生成23年的日期列并按照您的规则生成周字段的程序。代码如下:
```python
import pandas as pd
start_date = pd.to_datetime('2022-12-31')
end_date = pd.to_datetime('2023-12-31')
df = pd.DataFrame(pd.date_range(start_date, end_date), columns=['date'])
df['week'] = df.apply(lambda row: (row.date - pd.Timedelta(days=row.date.weekday() + 1)).strftime('%Y-%m-%d'), axis=1)
df = df.groupby('week').agg({'date': ['min', 'max']}).reset_index()
df.columns = ['week', 'start_date', 'end_date']
df['week_num'] = df.index + 1
# print(df) # 打印出生成的日期列表
for _, row in df.iterrows():
print("第{}周: {} 至 {}".format(row['week_num'], row['start_date'].strftime('%Y-%m-%d'), row['end_date'].strftime('%Y-%m-%d')))
```
这段程序会生成一个包含所有周的日期列表,并按照周的顺序打印出来。您可以根据需要修改打印格式或者将结果保存到文件中。
阅读全文