python pandas 创建数据框连胜
python pandas create dataframe winning streak
我需要创建 'winning streak' 列。
例如,
我有如下数据。具有最大值的列获胜。
AA BB CC
5.95 5.95 0
0 -2.35 2.35
-0.6 -0.6 -0.6
-2.35 2.35 0
-1.6 1.6 -1.6
-1.25 1.25 1.25
1.85 0 -1.85
1.3 0 -1.3
-1.7 1.7 -1.7
0 0.25 0.25
并且需要为每个创建 "winning streak; how many times win cosecutively" 列,如下所示。
AA BB CC CW_AA CW_BB CW_CC
5.95 5.95 0 1 1 0
0 -2.35 2.35 0 0 1
-0.6 -0.6 -0.6 1 1 2
-2.35 2.35 0 0 2 0
-1.6 1.6 -1.6 0 3 0
-1.25 1.25 1.25 0 4 1
1.85 0 -1.85 1 0 0
1.3 0 -1.3 2 0 0
-1.7 1.7 -1.7 0 1 0
0 0.25 0.25 0 2 1
我试过使用 "itertools" 库 (groupby) 来实现,但还不行。
有人可以帮助我吗?
pd.DataFrame({'AA':[5.95, 0, -0.6, -2.35, -1.6, -1.25, 1.85, 1.3, -1.7, 0],
'BB':[5.95, -2.35, -0.6, 2.35, 1.6, 1.25, 0, 0, 1.7, 0.25],
'CC':[0, 2.35, -0.6, 0, -1.6, 1.25, -1.85, -1.3, -1.7, 0.25]})
我需要创建 'winning streak' 列。 例如, 我有如下数据。具有最大值的列获胜。
AA BB CC
5.95 5.95 0
0 -2.35 2.35
-0.6 -0.6 -0.6
-2.35 2.35 0
-1.6 1.6 -1.6
-1.25 1.25 1.25
1.85 0 -1.85
1.3 0 -1.3
-1.7 1.7 -1.7
0 0.25 0.25
并且需要为每个创建 "winning streak; how many times win cosecutively" 列,如下所示。
AA BB CC CW_AA CW_BB CW_CC
5.95 5.95 0 1 1 0
0 -2.35 2.35 0 0 1
-0.6 -0.6 -0.6 1 1 2
-2.35 2.35 0 0 2 0
-1.6 1.6 -1.6 0 3 0
-1.25 1.25 1.25 0 4 1
1.85 0 -1.85 1 0 0
1.3 0 -1.3 2 0 0
-1.7 1.7 -1.7 0 1 0
0 0.25 0.25 0 2 1
我试过使用 "itertools" 库 (groupby) 来实现,但还不行。 有人可以帮助我吗?
pd.DataFrame({'AA':[5.95, 0, -0.6, -2.35, -1.6, -1.25, 1.85, 1.3, -1.7, 0],
'BB':[5.95, -2.35, -0.6, 2.35, 1.6, 1.25, 0, 0, 1.7, 0.25],
'CC':[0, 2.35, -0.6, 0, -1.6, 1.25, -1.85, -1.3, -1.7, 0.25]})