簡體   English   中英

Pythjon / pandas:如何從組內的特定值轉發填充

[英]Pythjon/pandas: how to forward fill from specific value within a group

我在pandas數據框中的數據如下所示:

      dummy group
0       0    A1
1       0    A1
2       0    A1
3       1    A1
4       0    A1
5       0    A1
6       0    B2
7       0    B1
8       0    B2
9       0    B2
10      0    B2
11      0    B2

我試圖從第一個1填充A1的剩余值,還有其他值。 使用ffill擺脫NaN非常直接,但我真的可以在這個條件填充上使用一些幫助。 謝謝

編輯:

結果應如下所示:

      dummy group
0       0    A1
1       0    A1
2       0    A1
3       1    A1
4       1    A1
5       1    A1
6       0    B2
7       0    B1
8       0    B2
9       0    B2
10      0    B2
11      0    B2

如果我找到了你,並且你想要從第一個開始,並且只有1和0可能存在於虛擬中,那么你可以使用numpy cumsum

>>> df['dummy'] = df.groupby('group')['dummy'].transform(np.cumsum)
>>> df.ix[df['dummy']!=0, 'dummy'] = 1
>>> df
    dummy group
0       0    A1
1       0    A1
2       0    A1
3       1    A1
4       1    A1
5       1    A1
6       0    B2
7       0    B1
8       0    B2
9       0    B2
10      0    B2
11      0    B2

[12 rows x 2 columns]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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