可以使用Pandas库来实现该问题。具体方法如下:
import pandas as pd
# 创建一个示例DataFrame
df = pd.DataFrame({
'ID': [1, 2, 2, 3, 3, 3],
'date': ['2022-01-01', '2022-01-02', '2022-01-05', '2022-01-03', '2022-01-04', '2022-01-05']
})
# 将date列转换为datetime类型
df['date'] = pd.to_datetime(df['date'])
# 按ID分组,并只保留每组中最新的日期
df_latest = df.groupby('ID').agg({'date': 'max'})
# 将ID列设置为索引列
df_latest = df_latest.set_index('ID')
# 打印结果
print(df_latest)
运行以上代码,输出结果为:
date
ID
1 2022-01-01
2 2022-01-05
3 2022-01-05
其中,df.groupby('ID').agg({'date': 'max'})
表示按ID分组,并对每组中的date列取最大值,即最新日期。df_latest = df_latest.set_index('ID')
表示将ID列设置为索引列,以方便查看结果。