python 处理Excel 数据分析

import openpyxl
type_name = 'test4'
file_name_rd = type_name+'.xlsx'
wb = openpyxl.load_workbook(file_name_rd)

# 获取工作表名
names = wb.sheetnames
# 使用wb[name] 获取指定工作表
sheet1 = wb[names[0]]
maxRow1 = sheet1.max_row  # 最大行数
sheet1.delete_cols(idx=4, amount=100)  # 删除第4列,及往右共100列
cell = sheet1['B']
list = []

for i in cell:
    if i.value not in list and i.value != 'B':
        list.append(i.value)

n = 2

for k in range(0, len(list)):
    sheet1.cell(1, 4+k).value = list[k]
    n = 2
    for m in range(2, maxRow1+1):
        if sheet1.cell(m, 2).value == list[k]:
            sheet1.cell(n, 4+k).value = sheet1.cell(m, 1).value
            n += 1
        
            

wb.save(file_name_rd)
print('over')

效果图:
在这里插入图片描述
如图,把左边输出到右边, 将B列数值相同的A值提取出来,并按照B值分列输出 到右边.

posted @ 2022-06-24 08:50  羽小兮  阅读(388)  评论(1)    收藏  举报