【发布时间】:2021-02-08 06:31:38
【问题描述】:
我需要将城市地址放在一起并查找所有重复项。我已经到了可以在excel文件中找到所有重复项的地步,到目前为止很容易。但是我必须更改代码中的每个城市才能搜索每个文件。我如何搜索每个文件而不必更改代码中的城市然后当然保存它。我想合并它们,但我不知道为什么它们会创建自己的 3 列,而不仅仅是与已经存在的“A”、“B”和“C”列合并。也许 Pandas 不是最好的库,可以推荐一个更好的库。
import os
file_df = pd.read_excel("Kermit.xlsx")
file_df.duplicated(subset = 'Address', keep = False)
file_df.drop_duplicates(subset= 'Address',inplace= True)
City = file_df.to_excel("Kermit2.xlsx", index= False)
# path = os.getcwd()
# files = os.listdir(path)
# print(files)
# files_xlsx = [f for f in files if f[-4:] == 'xlsx']
# print(files_xlsx)
# df = pd.DataFrame()
# for f in files_xlsx:
# data = pd.read_excel(f, 'Sheet1')
# df = df.append(data)`import os
【问题讨论】:
-
您是否意识到变量
City只能具有None的值,因为to_excel()不返回任何内容?为什么要关心覆盖它?只需在 for 循环中运行即可。 -
您能否更详细地解释您的意思:“他们创建了自己的 3 列,而不只是与已有的 'A'、'B' 和 'C' 列合并。”
-
文件有三列,名称、地址和电话。当我将两个或多个合并到一个新文件时,来自第二个城市的“A”、“B”和“C”列将创建一个“D”、“E”和“F”列,依此类推对于我拥有的所有 12 个左右的城市。相反,我想要的是将所有内容都放在相同的三列下,因为它当然都是相同的数据类型。
-
相反,我想要的是将所有内容都放在相同的三列下,因为它们当然都是相同的数据类型。看看pandas.pydata.org/pandas-docs/stable/user_guide/merging.html。
-
谢谢!他们都回答了我的问题。