[Python] Cumsum reset at NaN

Discussão em 'Python' iniciado por Stack, Janeiro 19, 2025.

  1. Stack

    Stack Membro Participativo

    If I have a pandas.core.series.Series named ts of either 1's or NaN's like this:

    3382 NaN
    3381 NaN
    ...
    3369 NaN
    3368 NaN
    ...
    15 1
    10 NaN
    11 1
    12 1
    13 1
    9 NaN
    8 NaN
    7 NaN
    6 NaN
    3 NaN
    4 1
    5 1
    2 NaN
    1 NaN
    0 NaN


    I would like to calculate cumsum of this serie but it should be reset (set to zero) at the location of the NaNs like below:

    3382 0
    3381 0
    ...
    3369 0
    3368 0
    ...
    15 1
    10 0
    11 1
    12 2
    13 3
    9 0
    8 0
    7 0
    6 0
    3 0
    4 1
    5 2
    2 0
    1 0
    0 0


    Ideally I would like to have a vectorized solution !

    I ever see a similar question with Matlab : Matlab cumsum reset at NaN?

    but I don't know how to translate this line d = diff([0 c(n)]);

    Continue reading...

Compartilhe esta Página