gpt4 book ai didi

python - 如何在pandas中按d-month-y格式的日期排序?

转载 作者:行者123 更新时间:2023-12-01 00:39:17 25 4
gpt4 key购买 nike

我有一列日期如下:2018 年 4 月 10 日。当我转置 df 或用它做任何事情时,pandas 会自动按天(第一个数字)对该列进行排序,因此它不是按时间顺序排列的。

我尝试使用 to_datetime 但因为月份是一个字符串,所以它不起作用。

如何将其转换为日期或取消自动排序(我的原始数据已经处于正确的顺序)。

最佳答案

我建议使用 to_datetime 转换为日期时间和参数格式:

df = pd.DataFrame({'dates':['10-may-18','10-apr-18']})
#also working for me
#df['dates'] = pd.to_datetime(df['dates'])
df['dates'] = pd.to_datetime(df['dates'], format='%d-%b-%y')

df = df.sort_values('dates')
df['dates'] = df['dates'].dt.strftime('%d-%B-%y')
print (df)
dates
1 10-April-18
0 10-May-18
<小时/>
df = pd.DataFrame({'dates':['10-may-18','10-apr-18']})
#also working for me
#df['dates'] = pd.to_datetime(df['dates'])
df['datetimes'] = pd.to_datetime(df['dates'], format='%d-%b-%y')

df = df.sort_values('datetimes')

df['full'] = df['datetimes'].dt.strftime('%d-%B-%y')
print (df)
dates datetimes full
1 10-apr-18 2018-04-10 10-April-18
0 10-may-18 2018-05-10 10-May-18

关于python - 如何在pandas中按d-month-y格式的日期排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57488936/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com