【发布时间】:2013-11-25 12:59:32
【问题描述】:
现在我正在创建一个程序,它将 csv 文件组合成一个不重复的类似列。创建的列需要添加到相邻列的旁边。
截至目前,我能够获取文件,但我无法确定一种方法来开发一种方法来迭代每个读取的 csv 数据帧,然后将所有这些数据帧合并在一起并推出一个.csv 文件。 现在我正在用三个带有公共 ID 列的 csv 文件来测试它 我现在的情况如下:
os.chdir(filedname)
data = pd.merge([pd.DataFrame.from_csv(file) for
file in glob.glob("*.csv")],on='ID')
data.to_csv('merged.csv')
文件如下所示:
(File 1) (File 2)
ID BLA ID X
1 2 1 55
2 3 2 2
3 4 3 12
4 5 4 52
并且目录中每个csv文件中除了ID列之外的每个不同的列应该相互合并以创建一个csv文件,如下所示:
ID BLA X
1 2 55
2 3 2
3 4 12
4 5 52
任何建议都可以帮助我解决这个问题。
【问题讨论】:
-
你有一些小例子吗?例如,如果我有 2 个带有“B”列的 csv,但这些列中的数据不同,那么您想在“B”列中为结果 DataFrame 获取什么?
-
我添加了一些额外的信息和一个例子!对此感到抱歉。
-
两个文件的 ID 不同,所以你想加入 ID 还是只添加新列而不查看 ID 列?
-
Oy vey,再次抱歉,我进行了编辑以使 ID 相同。
标签: python loops csv merge pandas