Python 返回dataframe中每对行之间的获胜行

Python 返回dataframe中每对行之间的获胜行,python,pandas,Python,Pandas,我有一个NBA比赛的数据框,我有分数,但我想有一行,如果球队赢了那场比赛,它包含一个二进制值1。我知道它可能有一些与'groupby'功能,但我不是很有经验。以下是数据框: 如果您的数据按如下所示进行排序: df['Win'] = (df['Total'].iloc[::2] .gt(df['Total'].iloc[1::2].values) .astype(float) ) df['Win'] = df[

我有一个NBA比赛的数据框,我有分数,但我想有一行,如果球队赢了那场比赛,它包含一个二进制值1。我知道它可能有一些与'groupby'功能,但我不是很有经验。以下是数据框:


如果您的数据按如下所示进行排序:

df['Win'] = (df['Total'].iloc[::2]
                .gt(df['Total'].iloc[1::2].values)
                .astype(float)
            )
df['Win'] = df['Win'].fillna(1-df['Win'].shift())
输出:

   Game  Total  Win
0     1    107  1.0
1     1     97  0.0
2     2     90  1.0
3     2     77  0.0
4     3    111  1.0
5     3    103  0.0

您可以添加数据框作为文本或代码来生成此数据框吗?@suppressionslayer:看游戏编号:两个队是连续的。啊,我现在看到它反映了@ScottBoston,df[0:9]中的文本数据。如果是抄写或类似的内容,我会很高兴看到它have@QuangHoang回答了但如果你们还好奇,这是我用的刮刀,另一半由于结构不对等的数据而被破坏: