我有两列rider_ID
和person_ID
的Pandas Dataframe ,如下所示:
ride_ID person_ID
ride_1 person1
ride_1 person2
ride_1 person3
ride_2 person1
ride_2 person4
ride_3 person1
ride_3 person5
ride_3 person2
ride_3 person3
..... ......
..... ......
对于每个唯一的ride_ID
,person_ID
的数目可以是2、20或100中的任何一个。总之,我想对列ride_ID
应用groupby,这样列person_ID
将反映到多个列中,列名称为person_ID1
到person_IDn
。预期输出为:
ride_ID person_ID1 person_ID2 person_ID3 person_ID4 person_ID5 ....... person_IDn
ride_1 person1 person2 person3 NaN NaN ......
ride_2 person1 NaN NaN person4 NaN ......
ride_3 person1 person2 person3 NaN person5
1条答案
按热度按时间kpbwa7wx1#
您可以使用pivot()。为此,请为每个“乘车标识”类型创建一个列“person_IDx”,其中的值以“person_ID1,person_ID2,...,person_IDn”的顺序表示: