使用Pandas解决数据处理问题

今天星期天,突然接到朋友电话需要帮忙解决数据处理问题。今天要求解的问题,听起来很简单,就是将数据【姓名、日期、金额】中同一个人日期排最后的那一笔数据筛选出来。

最开始使用的是excel处理,使用文心一言帮忙,给出的方案是:
{MAX( IF(姓名列=当前姓名,日期列) )},结果准确。

使用Pandas也进行了一次尝试,果然是python强大,使用更简单的语句就解决了问题。
import pandas as pd # 读取CSV文件
df = pd.read_xls('data.xlsx') # 按照身份证号和支付日期排序
df = df.sort_values(by=['姓名', '日期']) # 根据身份证号分组,并选择每个组的最后一行数据
df = df.groupby('姓名').last().reset_index() # 保存结果到Excel文件
df.to_excel('result.xlsx', index=False)