【发布时间】:2020-08-31 04:35:29
【问题描述】:
如果我有一个数据框:
>>> import pandas as pd
>>> df = pd.DataFrame({'grp':['A', 'A', 'B', 'B', 'B'], 'pos' : [1, 2, 1, 2, 3], 'desc1' : ['X1', 'X2', 'Y1', 'Y2', 'Y3'], 'desc2' : ['A1', 'A2', 'A1', 'A2', 'A3']})
>>> df['desc'] = df.desc1 + ' (' + df.desc2 + ')'
>>> df = df.drop(columns=['desc1', 'desc2'])
>>> df
grp pos desc
0 A 1 X1 (A1)
1 A 2 X2 (A2)
2 B 1 Y1 (A1)
3 B 2 Y2 (A2)
4 B 3 Y3 (A3)
>>>
我想将 i 转换为以下数据框:
grp pos1 pos2 pos3
0 A X1 (A1) X2 (A2) None
1 B Y1 (A1) Y2 (A2) Y3 (A3)
我想按“grp”对所有内容进行分组,并且每个位置在列单元格中都有 desc。 组具有可变数量的位置。 如何进行改造?
问候。
【问题讨论】: