[英]pandas unique id for sequences
我想為 Pandas 數據幀中的每個序列生成一個唯一的 id,其中序列的開始是從另一列標記的。
我有 X、Y 和 BOOL 列並希望生成 NEW_ID 列
X Y BOOL NEW_ID
x y TRUE 1
x y FALSE 1
x y FALSE 1
x y TRUE 2
x y FALSE 2
x y FALSE 2
x y FALSE 2
x y TRUE 3
x y TRUE 4
x y FALSE 4
我試圖找到一個沒有任何 for 循環的解決方案,因為我有一個很大的數據框,而且它需要很長時間。
將cumsum
與 BOOL 列一起使用
df['New_ID']=df.BOOL.cumsum()
df
Out[39]:
X Y BOOL NEW_ID New_ID
0 x y True 1 1
1 x y False 1 1
2 x y False 1 1
3 x y True 2 2
4 x y False 2 2
5 x y False 2 2
6 x y False 2 2
7 x y True 3 3
8 x y True 4 4
9 x y False 4 4
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.