当熊猫的长度与熊猫不匹配时,如何处理布尔运算符?

时间:2016-06-27 09:41:16

标签: python pandas

鉴于此类数据框aidx

import pandas as pd
import numpy as np
idx = np.array([False, False, True, True, False])
a = pd.Dataframe(np.full((5),0))

我想将n添加到an表示每个值的位置前True的数量。因此,a应该变为:0,0,1,2,2。你知道如何以矢量化的方式做到这一点吗?谢谢!

1 个答案:

答案 0 :(得分:0)

你想要的{II} cumsum

In [106]:
pd.DataFrame(idx).cumsum()

Out[106]:
   0
0  0
1  0
2  1
3  2
4  2

您的问题有点不清楚,但您可以使用布尔数组本身并调用cumsum,这会将True转换为1