我对 python 相当陌生。我正在尝试在 pandas 数据框中分配标签。这就是我的数据框的外观: 最终.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/