You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为数值越低表现越好的列表中的每个值计算对应百分位

反向百分位(得分越低表现越好)计算方案

你只需要对原始得分做一次大小关系反转,就能直接复用你熟悉的正向百分位计算逻辑,实现非常简单:

实现代码

方案1:直接修改原正向逻辑(最稳妥,无参数兼容问题)

把所有得分乘以-1,数值大小关系就完全反转,原来的「越高越好」逻辑直接适配「越低越好」的场景:

from scipy.stats import percentileofscore

# 你的原始得分列表
lst = [60, 65, 89, 200, 220, 73, 340, 500, 65]
# 计算反向百分位:得分越低,返回的百分位数值越高,代表表现越好
reverse_percentiles = [percentileofscore([-x for x in lst], -i) for i in lst]

方案2:基于正向百分位换算

如果你已经算出了正向百分位结果,直接用100减去对应值即可,和方案1效果完全等价:

# 先算正向百分位(得分越高表现越好的结果)
forward_percentiles = [percentileofscore(lst, i) for i in lst]
# 换算为反向百分位
reverse_percentiles = [100 - p for p in forward_percentiles]

效果验证

我们用小样本做测试,确认结果符合预期:
测试样本:[60, 65, 73, 89](得分越低越好)
计算得到的反向百分位结果:

  • 60 → 100.0,为最高百分位,符合「表现最好」的预期
  • 65 → 75.0,表现优于75%的样本
  • 73 → 50.0,表现处于中游
  • 89 → 25.0,为最低百分位,符合「表现最差」的预期

内容的提问来源于stack exchange,提问作者srv_77

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 11:36:03