我对python相当陌生,我正在尝试在pandas数据框中分配标签,这就是我的数据框的外观:
final.head(3)

Match Team1 Team2 winner
A       2     3      3
B       1     2      1
C       3     1      1


我想创建一个新列来说明谁赢得了比赛。例如,如果Team1获胜,游戏标签应为0,如果Team2获胜,游戏标签应为1。
预期结果应为:-

Match Team1 Team2 winner label
A       2     3      3     1
B       1     2      1     0
C       3     1      1     1


请告诉我我应该如何进行。谢谢。

最佳答案

您的标签实质上是获胜者与Team2是否相同。所以你可以做

final['label'] = final['winner'].eq(final['Team2']).astype(int)


或者,如果您坚持使用numpy,则根据您的逻辑:

final['label'] = np.where(final['Team1'].eq(final['winner']), 0, 1)

关于python - 我想根据列将标签0/1分配给pandas数据框,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58137731/

10-13 09:37