gpt4 book ai didi

python - 使用 Python 将数据框中的选择性行合并为 1

转载 作者:行者123 更新时间:2023-11-30 22:18:44 24 4
gpt4 key购买 nike

一个文件夹中有多个 Excel 文件。它们的结构相同,内容不同。我想将它们合并到 1 个 Excel 文件中,按顺序读取 55.xlsx、44.xlsx、33.xlsx、22.xlsx、11.xlsx。

这些线路做得很好:

import os
import pandas as pd


working_folder = "C:\\temp\\"
files = os.listdir(working_folder)
files_xls = []

for f in files:
if f.endswith(".xlsx"):
fff = working_folder + f
files_xls.append(fff)

df = pd.DataFrame()

for f in reversed(files_xls):
data = pd.read_excel(f) #, sheet_name = "")
df = df.append(data)

df.to_excel(working_folder + 'Combined 1.xlsx', index=False)

图片显示了原始纸张的外观以及结果。

enter image description here

但是在顺序读取中,除了数据框中的内容之外,我只想附加唯一的行。

在这种情况下:

  1. 代码首先读取文件 55.xlsx,然后读取 44.xlsx,然后读取 33.xlsx...

  2. 当读取 44.xlsx 时,不应附加第 444 行 Kate,因为之前的数据帧中已经有一个 Kate。

  3. 当读取 33.xlsx 时,不应附加第 333 行 Kate,因为之前的数据帧中已经有一个 Kate。

  4. 当读取 22.xlsx 时,不应附加第 222 行 Jack,因为之前的数据帧中已经有一个 Jack。

顺便说一句,为了您的方便,这里是数据框(而不是 Excel 文件)。

d5 = {'Code': [555, 555], 'Name': ["Jack", "Kate"]}
d4 = {'Code': [444, 444], 'Name': ["David", "Kate"]}
d3 = {'Code': [333, 333], 'Name': ["Paul", "Kate"]}
d2 = {'Code': [222, 222], 'Name': ["Jordan", "Jack"]}
d1 = {'Code': [111, 111], 'Name': ["Leslie", "River"]}

最佳答案

df.drop_duplicates(subset=['name'], keep='first')

关于python - 使用 Python 将数据框中的选择性行合并为 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49292728/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com