这是另一个更充实的解决方案,摘自克里斯·阿尔本的网站 https://chrisalbon.com/python/data_wrangling/pandas_long_to_wide/.
创建“长”数据框
raw_data = {'patient': [1, 1, 1, 2, 2],
'obs': [1, 2, 3, 1, 2],
'treatment': [0, 1, 0, 1, 0],
'score': [6252, 24243, 2345, 2342, 23525]}
df = pd.DataFrame(raw_data, columns = ['patient', 'obs', 'treatment', 'score'])
制作“宽”数据
df.pivot(index='patient', columns='obs', values='score')