我在一个文件夹中有许多具有相同列的 Excel 文件。我需要浏览每个文件并比较一个文件的“用户编号”列的哪些值与另一个文件相同。然后基于该操作另一个名为“Date”的列。例如:A2018_02_01 file has: User_Number Date 18732A 2017-06-2227192B 2017-08-06 23872Z 2017-08-06 82716A 2017-09-18 77629B 2017-09-12 A2018_02_02 file has:User_Number Date18732A 2017-06-2227192B 2017-08-0654321R 2017-12-1123872Z 2017-11-0418732A 2017-06-25因此,在这种情况下,我希望程序检查用户编号值的匹配项,然后,如果一个文件的日期(链接到该编号)与另一个文件的日期不同,我想将两个日期都更改为最旧的日期。在这种情况下,我会:A2018_02_01 file has: User_Number Date 18732A 2017-06-22 27192B 2017-08-06 23872Z 2017-08-06 82716A 2017-09-18 77629B 2017-09-12 A2018_02_02 file has:User_Number Date18732A 2017-06-2227192B 2017-08-0654321R 2017-12-1123872Z 2017-08-0618732A 2017-06-22我附加了所有文件:import osimport globimport pandas as pdpath=r'C/.../files'files = os.listdir(path)df = pd.DataFrame()for f in glob.glob(path + "/*.xlsx"): data = pd.read_excel(f,header=2) df=df.append(data) df["Date"]=pd.to_datetime(df["Date"], errors='coerce')该逻辑不像 javascript 逻辑那样工作,所以我不确定如何做条件。我试过:df_number = df["User Number"]for number in df[df_number.duplicated()]: number.df["Date"]number.df["Date"].min()和其他方法一样,但没有任何效果。任何帮助表示赞赏。
添加回答
举报
0/150
提交
取消