[英]Calculate a score for each row based on multiple conditions in pandas avoiding a for loop
[英]How to calculate percentile score for each row in pandas?
我试图通过查看驾驶员过去20场比赛的速度排名。 但是,我需要获取当前值和滚动值才能起作用。 这是我到目前为止所做的:
def set_rank(x, y):
return stats.percentileofscore(x,y)
df['Rank'] = df['SpeedRank'].rolling(20).apply(lambda x: set_rank(x, df['SpeedRank']), raw=True)
问题是y
我怎么能发送相应行功能的价值?
我已经解决了这个问题。 解决方法如下:
def set_rank(x):
return stats.percentileofscore(x,x[-1])
df['Rank'] = df['SpeedRank'].rolling(20).apply(set_rank, raw=True)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.