gpt4 book ai didi

python - 对 pandas 列与其他列进行评分

转载 作者:行者123 更新时间:2023-12-01 00:43:17 26 4
gpt4 key购买 nike

我想对 df 中有多少其他列大于或等于引用列进行排名。给定 testdf:

testdf = pd.DataFrame({'RefCol': [10, 20, 30, 40], 
'Col1': [11, 19, 29, 40],
'Col2': [12, 21, 28, 39],
'Col3': [13, 22, 31, 38]
})

我正在使用辅助函数:

def sorter(row):
sortedrow = row.sort_values()
return sortedrow.index.get_loc('RefCol')

如:

testdf['Score'] = testdf.apply(sorter, axis=1)

对于实际数据,此方法非常慢,如何加快速度?谢谢

最佳答案

看起来您需要比较 RefCol 并检查是否有任何列小于 RefCol ,请使用:

testdf.lt(testdf['RefCol'],axis=0).sum(1)
<小时/>
0    0
1 1
2 2
3 2

对于大于等于使用:

testdf.drop('RefCol',1).ge(testdf.RefCol,axis=0).sum(1)

关于python - 对 pandas 列与其他列进行评分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57185160/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com