python合并csv文件、并利用结果进行计算_python合并csv文件

这篇博客介绍了如何使用Python将两个CSV文件按列合并,并进行数据处理。通过读取a.csv和b.csv,利用特定算法合并为c.csv。核心算法函数merge_dict1_into_dict2实现了将两个二维字典合并,然后将处理后的结果写入新文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

学一点总结一点,积少成多^_^

需求:有两个csv文件,需要按列合并。举例如下:

a.csv:

column1    column2    column3

a1               a21 a22      a31 a32

b1               b21 b2       b3   b32

b.csv:

column1    column2    column3

a1               a21 a22      a33

c                c1    c2        c31 c3

c.csv

column1     column2      column3

a1                 a21 a22      a31 a32 a33

b1               b21 b2       b3   b32

c                c1    c2        c31 c3

要求:把 a.csv 和 b.csv 按列合并,得到 c.csv。

实现:

hdr = 'column1, column2, column3'.split(',')

1. 核心算法函数:

def merge_dict1_into_dict2(dict1, dict2):

for k2, value2 in dict2.items():

if k2 in dict1:

for idx in hdr:

if value2 [idx] != dict1[k2][idx]

set1 = set(dict1[k2][idx].split(' '))

set2 = set(value2[idx].split(' '))

dict1[k2] = ' '.join(set1 | set2)

else:

dict1[k2] = value2

2. 把 a.csv 和 b.csv 分别读到两个二维字典里:dict1, dict2

//明天再写...

dict1 = dict([(iter['column1'], iter) for iter in csv.DictReader(open('a.csv', 'r')) if 'column1' in iter])

merge_dict2_into_dict1(dict1, dict2)

3. 把用函数处理过的 dict1 写入 c.csv文件。

4. 有木有人知道tab键怎么敲,手工输‘’太累了。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值