遍历两个列表/列,并将条件添加到第三个列表/列



我正在做一项作业,我目前面临着一个挑战,希望有人能帮助我。
我有两个列或列表(无论哪个更适合),我想迭代以将结果添加到第三列。这是一个自2016年以来的英超数据集,它将有条件设置胜利,失败和平局,并将获得或未获得的积分添加到第三列/列表中。
谢谢

def pointsF(df):
x, y = list(df['score1']), list(df['score2'])
#x, y = iter(xl), iter(yl)
g = 0
r = list()
#for (i, z) in itertools.zip_longest(x, y):
for x, y in zip(x, y):
if x == y:
g = g +1
r.append(g)
next

elif x > y:
g = g+3
r.append(g)
next
else:
g = g
r.append(g)
next
return r

如果有人遇到同样的情况,这是我发现的最好的解决方案!

cond1 = [ (dfPL['GoalsHome'] > dfPL['GoalsAway']), (dfPL['GoalsHome'] < dfPL['GoalsAway']), (dfPL['GoalsHome'] == dfPL['GoalsAway'])]

#choices result and points
cc = ['w','l','d']
ccp = [3,0,1]
dfPL['HomeResult'] = np.select(cond1, cc, default=0 )

相关内容

最新更新