处理excel表中不同类型个数统计以及多个单元格内容合并
上一篇 /
下一篇 2022-01-13 20:01:36
/ 个人分类:python
处理excel表中不同类型个数统计以及多个单元格内容合并
例如:excel表格内容如下,第一列是类型,第二列是每一个类型对应的数量以及属性。希望按照1和2等类别统计总的个数,并且将第3列中同一类别内容合并成一个单元格
处理效果如下:
使用python处理数据代码如下:
import re
#读取的表格
filename = “data/testdata.csv"
#输出处理后数据表格
filename2 = "data/newdata.csv"
aa = []
bb = {}
#读取表格里所有类型,并将类型存放在aa列表中
with open(filename) as file_object:
for line in file_object:
line = line.rstrip()
a = re.match(r'(.*?),', line)
a = a.group(1)
if a not in aa:
aa.append(a)
#逐行读取表格,按照类型来遍历
for a in aa:
with open(filename) as file_object:
for line in file_object:
zz = a + ",(.*),(.*)" # 匹配表格数据
temp = re.match(zz, line)
if temp is not None:
bb1 = temp.group(1)
bb2 = temp.group(2)
if a not in bb.keys():
bb[a] = [bb1, bb2]# bb字典初始化
else:
bb[a][0] = int(bb[a][0]) + int(bb1) #按类型累加个数
bb[a][1] = bb[a][1] + "-" + bb2 #合并不同单元格属性
#将处理好数据放在newdata.csv文件中
for a in bb.keys():
text = a + "," + str(bb[a][0]) + "," + bb[a][1]+"\n"
with open(filename2, 'a') as file_object2:
file_object2.write(text)
收藏
举报
TAG: