我最近开始玩Pandas,以操纵一些数据,我现在试图匿名后的groupBy
几列找到独特的事件的人。
例如,假设以下DF:
First Name Last Name DOB
0 Bob One 28/05/1973
1 Bob One 28/05/1973
2 Ana Two 28/07/1991
3 Ana Two 28/07/1991
4 Ana Two 28/07/1991
5 Jim Three 07/01/1994
我可以很容易地找到唯一的人的名字,姓氏和出生日期使用df.groupby(['First Name', 'Last Name', 'DOB'])
。
但是,我想对每个唯一的组合应用一个函数,将这些名称转换为已知的匿名(增量)版本。
First Name Last Name DOB
0 F1 L1 28/05/1973
1 F1 L1 28/05/1973
2 F2 L2 28/07/1991
3 F2 L2 28/07/1991
4 F2 L2 28/07/1991
5 F3 L3 07/01/1994
我已经尝试了一些DF groupBy的transform
和apply
函数,但到目前为止还没有成功。我该如何实现呢?
2条答案
按热度按时间sqserrrh1#
得到
其中
ids
是laik7k3q2#
您可以使用
pd.factorize
: