python如何合并两个csv_python – 合并2个csv文件

当我使用csv文件时,我经常使用

pandas库.它使这样的东西很容易.例如:

import pandas as pd

a = pd.read_csv("filea.csv")

b = pd.read_csv("fileb.csv")

b = b.dropna(axis=1)

merged = a.merge(b, on='title')

merged.to_csv("output.csv", index=False)

以下是一些解释.首先,我们读入csv文件:

>>> a = pd.read_csv("filea.csv")

>>> b = pd.read_csv("fileb.csv")

>>> a

title stage jan feb

0 darn 3.001 0.421 0.532

1 ok 2.829 1.036 0.751

2 three 1.115 1.146 2.921

>>> b

title mar apr may jun Unnamed: 5

0 darn 0.631 1.321 0.951 1.7510 NaN

1 ok 1.001 0.247 2.456 0.3216 NaN

2 three 0.285 1.283 0.924 956.0000 NaN

我们看到有一个额外的数据列(请注意,fileb.csv – title,mar,apr,may,jun – 的第一行在结尾有一个额外的逗号).我们可以很容易地摆脱:

>>> b = b.dropna(axis=1)

>>> b

title mar apr may jun

0 darn 0.631 1.321 0.951 1.7510

1 ok 1.001 0.247 2.456 0.3216

2 three 0.285 1.283 0.924 956.0000

现在我们可以在标题列中合并a和b:

>>> merged = a.merge(b, on='title')

>>> merged

title stage jan feb mar apr may jun

0 darn 3.001 0.421 0.532 0.631 1.321 0.951 1.7510

1 ok 2.829 1.036 0.751 1.001 0.247 2.456 0.3216

2 three 1.115 1.146 2.921 0.285 1.283 0.924 956.0000

最后写出来:

>>> merged.to_csv("output.csv", index=False)

生产:

title,stage,jan,feb,mar,apr,may,jun

darn,3.001,0.421,0.532,0.631,1.321,0.951,1.751

ok,2.829,1.036,0.751,1.001,0.247,2.456,0.3216

three,1.115,1.146,2.921,0.285,1.283,0.924,956.0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值