基于 bool 系列的 pandas 系列的高效分配
Efficient assignment into a pandas Series based on a bool Series
给定一个 Series
布尔值,我想创建一个新的 Series
,它从 0 开始,并递增布尔值 Series
中的每个对应条目是 True
.这是一个例子:
s = pd.Series([False, True , False, False, False, True, False, False, True, False])
看起来像:
0 False
1 True
2 False
3 False
4 False
5 True
6 False
7 False
8 True
9 False
我正在寻找一种高效且尽可能优雅的操作,无需循环,以获得以下内容 Series
:
0 0
1 1
2 1
3 1
4 1
5 2
6 2
7 2
8 3
9 3
s.cumsum()
0 0
1 1
2 1
3 1
4 1
5 2
6 2
7 2
8 3
9 3
dtype: int64
给定一个 Series
布尔值,我想创建一个新的 Series
,它从 0 开始,并递增布尔值 Series
中的每个对应条目是 True
.这是一个例子:
s = pd.Series([False, True , False, False, False, True, False, False, True, False])
看起来像:
0 False
1 True
2 False
3 False
4 False
5 True
6 False
7 False
8 True
9 False
我正在寻找一种高效且尽可能优雅的操作,无需循环,以获得以下内容 Series
:
0 0
1 1
2 1
3 1
4 1
5 2
6 2
7 2
8 3
9 3
s.cumsum()
0 0
1 1
2 1
3 1
4 1
5 2
6 2
7 2
8 3
9 3
dtype: int64