我有3列,例如team1,team2和获胜者
(附言:我的数据集很大,我只是在这里举几个例子)
我想找出谁永远不会赢。
所以我认为是要找到team1和team 2的独特价值 然后从唯一值中找出哪个值不会出现在获胜者列表中。
team1 team 2 toss_winner
Kolkata knight riders delhi daredevil delhi daredevils
kings XI punjab pune warriors kings XI punjab
delhi daredevil mumbai indians delhi daredevil
pune warriors chennai superkings chennai superkings
rajasthan royals gujarat lions gujarat lions
Sunrisers Hyderabad decan chargers Sunrisers Hyderabad
Royalchallenger Banglore Kolkata knight riders Kolkata knight riders
chennai superkings rajasthan royals rajasthan royals
a=np.unique(df[['team1', 'team2']])
b=(df["toss_winner"]).unique()
答案 0 :(得分:0)
uniqueTeams = np.unique(np.concatenate([df['team1'].values, df['team2'].values]))
df.loc[~df['toss_winner'].isin(uniqueTeams), 'toss_winner']
首先,合并两列的所有值,然后查看唯一值。接下来,您查看我们独特团队~df['toss_winner'].isin(uniqueTeams)
中当前的值,然后查看“ toss_winner”列。
您必须小心,因为如果有team1列 “加尔各答骑士骑士”,但在team2栏中您有“加尔各答骑士骑士 s ”。这些将被视为独特的团队,因此您将必须在执行其他任何操作之前真正清除数据。