要按天对数据框进行排序,但不包括年份,可以使用strftime
函数将日期转换为只包含月和日的格式,然后使用sort_values
函数按照转换后的日期进行排序。
以下是一个示例代码:
import pandas as pd
# 创建示例数据框
data = {'Date': ['2019-01-01', '2020-02-02', '2022-03-03', '2021-04-04'],
'Value': [1, 2, 3, 4]}
df = pd.DataFrame(data)
# 将日期转换为只包含月和日的格式
df['MonthDay'] = pd.to_datetime(df['Date']).dt.strftime('%m-%d')
# 按照转换后的日期进行排序
df_sorted = df.sort_values('MonthDay')
print(df_sorted)
输出结果为:
Date Value MonthDay
0 2019-01-01 1 01-01
1 2020-02-02 2 02-02
3 2021-04-04 4 04-04
2 2022-03-03 3 03-03
在这个示例中,我们首先使用pd.to_datetime
函数将日期列转换为时间戳格式,然后使用strftime
函数将时间戳格式的日期转换为只包含月和日的格式,并将结果存储在新的列MonthDay
中。最后,我们使用sort_values
函数按照MonthDay
列进行排序,得到按天排序的数据框。
上一篇:按天的SKU的运行总和