有没有什么办法能从第一张表格快速变成第二张表格哇

img

img


有好多类似数据在一张表里需要合并,登记号一样的情况下,怎么把不同行的不同指标的数据合并到一行呢

import pandas as pd  # 导入pandas包

df = pd.read_excel('test.xlsx', sheet_name = '测试数据')  # 读取源文件的相关sheet,例如test.xlsx文件的名为'测试数据'的sheet
df1 = df[['登记号', 'psa']]  # 截取表单的‘登记号’列和名为'psa'的列
df1 = df1.dropna(subset=['psa'])  # 删除该数据结构中名为'psa'列的空白内容,也可以不用=赋值,写成:df1.dropna(subset=['psa'], inplace=True)
df2 = df[['登记号', 'tpsa']]  # 同上,重复,只是换了其他名字的列
df2 = df2.dropna(subset=['tpsa'])
df3 = df[['登记号', 'fpsa']]
df3 = df3.dropna(subset=['fpsa'])

step = pd.merge(df1, df2, how='left', on=['登记号'])  # 三个小结构两两合并,key是‘登记号‘
result = pd.merge(step, df3, how='left', on=['登记号'])

result.to_excel('test_result.xlsx', sheet_name = '合并结果测试', index=False)  # 生成结果文件以供参考

img

img