我想从 DataFrame 的一列中获取最大日期,但结果是错误的?
我做错了什么?
df = pd.DataFrame.from_dict({'date':['31.12.2014', '03.10.2015','02.01.2013', '05.01.2013', '14.10.2015']})
df.date.max()
的结果是 '31.12.2014'
而不是 '14.10.2015'
,为什么?
首先将您的日期列转换为日期时间格式,然后检查最大或最小值。
import pandas as pd
df = pd.DataFrame.from_dict({'date':['31.12.2014', '03.10.2015','02.01.2013', '05.01.2013', '14.10.2015']})
# Convert to datetime format
df['date'] = pd.to_datetime(df['date'])
# Print max value
print(df['date'].max())
df['date'].astype('datetime64[ns]').max()
pd.to_datetime(df['date'], errors='coerce', dayfirst=True).max()
这个函数可以完成这项任务。 - cs95