我用scipy
rankdata
来分配等级。我需要颠倒指定的等级,这样最高的数字被赋予1的等级。除了不能正确处理ties,并且返回int而不是float之外,还可以执行以下操作。我假设这与rankdata
中的循环有关,但不确定如何实现这一点。你知道吗
from scipy.stats import rankdata
arr = np.array([[10, 15, 19, 8, 8]])
rank = rankdata([-1 * i for i in arr]).astype(float)
给定结果:
[3, 2, 1, 4, 4]
预期结果:
[3., 2., 1., 4.5, 4.5]
“我需要反转指定的等级,以便最高的数字的等级为1”
这是rankdata的默认行为。你知道吗
“除了不能正确处理扎带外,请确保以下各项正常工作”
关于关系的行为主要通过方法参数来处理。参见下面的示例列表(source):
“返回int而不是float” 我不知道你是怎么得到这个的。 我唯一能想到的就是文档中列出的注释: 注意事项
相关问题 更多 >
编程相关推荐