gpt4 book ai didi

python - 查找哪个列对于哪个 Excel 工作表数据框是唯一的

转载 作者:行者123 更新时间:2023-12-03 16:58:49 25 4
gpt4 key购买 nike

我有一个包含 40 个工作表的 Excel 工作表。我需要知道这些工作表中的哪些列在其他工作表中不存在。
前任
第 1 页:
第1列第2列第3列第4列
第 2 页:
第1列第2列第3列第5列
第 3 页:
第1列第2列第3列第5列第6列
我的数据框:

df_column_sheet_name    column
sheet number 1: column4
sheet number 2: column5
sheet number 3: column5,column6
非常感谢您的帮助
问候

最佳答案

第一次使用 sheet_name=None用于将所有工作表转换为 DataFrame 字典的参数:

df = pd.read_excel('file.xlsx', sheet_name=None)
#print (df)
然后通过 reduce 获取所有工作表中相同的所有列:
from functools import reduce
same = reduce(lambda x, y: set(x) & set(y), df.values())
print (list(same))
['column1', 'column2', 'column3']
最后一个过滤列的连接列名称不匹配并传递给 DataFrame构造函数:
out = [(k, ', '.join(x for x in v.columns if x not in same)) for k, v in df.items()]
print (out)
[('sheet number 1', 'column4'),
('sheet number 2', 'column5'),
('sheet number 3', 'column5, column6')]


df1 = pd.DataFrame(out, columns=['df_column_sheet_name','column'])
print (df1)
df_column_sheet_name column
0 sheet number 1 column4
1 sheet number 2 column5
2 sheet number 3 column5, column6

关于python - 查找哪个列对于哪个 Excel 工作表数据框是唯一的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64312252/

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