pandas 结合了多个csv文件 [英] Pandas combine multiple csv files

查看:56
本文介绍了 pandas 结合了多个csv文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有多个要合并到一个df中的csv文件.

I have multiple csv files that I would like to combine into one df.

它们都是这种通用格式,带有两个索引列:

They are all in this general format, with two index columns:

                                           1     2
CU0112-005287-7 Output Energy, (Wh/h)   0.064   0.066
CU0112-005287-7 Lights (Wh)                0     0

                                            1     2
CU0112-001885-L Output Energy, (Wh/h)   1.33    1.317
CU0112-001885-L Lights (Wh)             1.33    1.317

以此类推...

合并的df为:

                                           1     2
CU0112-005287-7 Output Energy, (Wh/h)   0.064   0.066
CU0112-005287-7 Lights (Wh)                0     0
CU0112-001885-L Output Energy, (Wh/h)   1.33    1.317
CU0112-001885-L Lights (Wh)             1.33    1.317

我正在尝试以下代码:

import os
import pandas as pd
import glob

files = glob.glob(r'2017-12-05\Aggregated\*.csv')   //folder which contains all the csv files

df = pd.merge([pd.read_csv(f, index_col=[0,1])for f in files], how='outer')

df.to_csv(r'\merged.csv')

但是我收到此错误:

TypeError: merge() takes at least 2 arguments (2 given)

推荐答案

我认为您需要 concat 代替merge:

df = pd.concat([pd.read_csv(f, index_col=[0,1]) for f in files])

这篇关于 pandas 结合了多个csv文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆