我有一个带有字符串的列,用于转换为日期时间(西班牙语日期格式)>>> df['Date'].head()0 31/10/20191 31/10/20192 30/10/20193 30/10/20194 29/10/2019Name: Date, dtype: object转换>>>pd.to_datetime(df['Date'], dayfirst = True)>>>df['Date'].head()0 2019-10-311 2019-10-312 2019-10-303 2019-10-304 2019-10-29Name: Date, dtype: datetime64[ns]现在我想按日期对它进行排序,输出奇怪地转换为:>>>df['Date'] =df.sort_values(by=['Date'], ascending = True)>>>df['Date'].head()0 9443248_191 9443205_192 9441864_193 9441809_194 9440310_19Name: Date, dtype: object任何线索,这里发生了什么?为什么类型转换回对象?
1 回答

婷婷同学_
TA贡献1844条经验 获得超8个赞
确保您的“日期”列已转换为第一个,然后排序应该可以正常工作:datetime
import pandas as pd
df = pd.DataFrame({'Date': ['31/10/2019', '31/10/2019', '30/10/2019', '30/10/2019', '29/10/2019']})
df['Date'] = pd.to_datetime(df['Date'], dayfirst=True)
df.sort_values(by='Date', ascending=True, inplace=True)
# df['Date']
# 4 2019-10-29
# 2 2019-10-30
# 3 2019-10-30
# 0 2019-10-31
# 1 2019-10-31
# Name: Date, dtype: datetime64[ns
添加回答
举报
0/150
提交
取消