Python数据处理转置问题??

img


怎么把上面这个表转化成下面这种格式呀

img

勉强实现:

import pandas as pd

# todo 此处写入需要处理的 Excel 名
df = pd.read_excel('test.xlsx') 

def handle(row: pd.Series):
    # todo  此处 max 为主题个数
    max = 10
    new_series = row[['人员ID', '姓名', '个人简历']]
    for i in range(max):
        title = '主题' if i == 0 else f'主题.{i}' 
        chance = '概率' if i ==0 else f'概率.{i}'
        if pd.isna(row[title]):
            continue
        else:
            new_series[f'主题{row[title]}'] = row[chance]
    return new_series

res = df.apply(handle, axis=1)
# 结果存储为result.xlsx
res.to_excel('result.xlsx')