簡體   English   中英

序列的熊貓唯一 ID

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM