前几天我用两列数据问了类似的问题:
在 Python 中按唯一值对列进行分组
现在我有三栏。它们需要按 A 列分组,B 列作为标题值,C 列正确排序。
我的数据框如下所示:
A B C
25115 20 45
25115 30 154
25115 40 87
25115 70 21
25115 90 74
26200 10 48
26200 20 414
26200 40 21
26200 50 288
26200 80 174
26200 90 54
但我需要这样结束:
10 20 30 40 50 70 80 90
25115 45 154 87 21 74
26200 48 414 21 288 174 54
这会获取 C 列的值,但不会将 B 列作为行名称。
import pandas as pd
df = pd.DataFrame({'A':[25115,25115,25115,25115,25115,26200,26200,26200,26200,26200,26200],'B':[20,30,40,70,90,10,20,40,50,80,90],'C':[45,154,87,21,74,48,414,21,288,174,54]})
a = df.groupby('A')['C'].apply(lambda x:' '.join(x.astype(str)))
任何想法将不胜感激。