我正在努力使用熊猫合并多个.csv文件。
所有文件都具有 如下所示的结构相同,其中,每个csv的“ UniqueColumn”均不同,每个csv的“名称”列均相同,但排序方式不同:
csv1:
Name, UniqueColumnA
testName, DataA
...
csv2:
Name, UniqueColumnB
testName, DataB
...
等
所需的合并的csv文件如下所示:
Name, UniqueColumnA, UniqueColumnB, UniqueColumnC
testName, DataA, DataB, DataC
我尝试使用以下代码:
files = glob.glob(r'pathname*.csv')
df = pd.concat([pd.read_csv(f, index_col=['Name']) for f in files])
df.to_csv('merged.csv')
但是输出是
testName, DataA
testName, DataB
...
我对Python不太熟悉,尤其是对熊猫,所以我非常感谢在这里提供帮助
答案 0 :(得分:1)
有重复的索引,您需要告诉熊猫如何处理它们,在您的情况下,您需要inner join
,因此以下内容应该对您有用:
df = pd.concat([pd.read_csv(f, index_col='Name') for f in files], join='inner', axis=1)