标签: ranking

排名算法来比较"排名"

是否有一种算法允许根据两个排名中这些项目的位置差异对项目进行排名,但也与位置"加权",例如,从位置2-> 1的一个玩家应该排名高于玩家那个从9-> 8开始.

玩具示例,我有两个列表/等级:

等级1:

  1. 玩家a
  2. 球员b
  3. 玩家c
  4. 玩家d ...

等级2:

  1. 球员d
  2. 玩家c
  3. 玩家a
  4. 玩家b ......

我正在考虑用平均排名(或其他值)来"加权"排名差异,例如,如果玩家从9-> 8开始,则用于排名的值将是(9-8)/ avg(8,9) )= 1/8,5.

algorithm compare ranking ranking-functions

2
推荐指数
1
解决办法
5166
查看次数

使用 apply 函数对排序后的数据集进行排名

我的数据框如下所示:

head(temp$HName)

[1] "UNIVERSITY OF TEXAS HEALTH SCIENCE CENTER AT TYLER"
[2] "METHODIST HOSPITAL,THE"                            
[3] "TOMBALL REGIONAL MEDICAL CENTER"                   
[4] "METHODIST SUGAR LAND HOSPITAL"                     
[5] "GULF COAST MEDICAL CENTER"                         
[6] "VHS HARLINGEN HOSPITAL COMPANY LLC"   

head(temp$Rate)

[1] 7.3 8.3 8.7 8.7 8.8 8.9
76 Levels: 7.3 8.3 8.7 8.8 8.9 9 9.1 9.2 9.3 9.4 9.5 9.6 ... 17.1

> head(temp$Rank)
[1] NA NA NA NA NA NA
Run Code Online (Sandbox Code Playgroud)

temp$Rate排序。我正在尝试编写一个函数assignRank,它为我提供了一个新列temp$Rank,其值为 1、2、3、3、4、5

我的代码如下:

tapply(temp$Rank,temp$Rate, assignRank)
Run Code Online (Sandbox Code Playgroud)

在哪里 …

sorting r ranking tapply

2
推荐指数
1
解决办法
1614
查看次数

在列表中查找最高值(和索引)的 Pythonic 方法

我有一个整数列表,我想找到列表中的最高值(最大值和最接近值)及其相应的索引值。

我有一个方法,但我觉得太复杂了!

lst = [10,6,17,99,3,1,-3,47, 99]
max_value = (max(lst))
largest = 0.0
largest_index = 0
second_largest = 0.0
second_largest_index = 0
third_largest = 0
third_largest_index = 0
for (index,value) in enumerate (lst):
        if value == largest_value:
            if largest == 0.0:
                largest = value
                largest_index = index
            elif largest != 0.0 and value > second_largest:
                second_largest = value
                second_largest_index= index
            elif second_largest != 0.0 and value > third_largest:
                third_largest = value
                third_largest_index = index
            elif third_largest != 0.0 and value > …
Run Code Online (Sandbox Code Playgroud)

python sorting indexing ranking

2
推荐指数
1
解决办法
8691
查看次数

Numpy 数组排列所有元素

我有一个二维 numpy 数组,我想知道如何创建一个新的二维 numpy 数组来表示基于原始二维数组中所有项目的值的排名。

我想使用以下数组:

anArray = [[ 18.5,  25.9,   7.4,  11.1,  11.1]
           [ 33.3,  37. ,  14.8,  22.2,  25.9]
           [ 29.6,  29.6,  11.1,  14.8,  11.1]
           [ 25.9,  25.9,  14.8,  14.8,  11.1]
           [ 29.6,  25.9,  14.8,  11.1,   7.4]]
Run Code Online (Sandbox Code Playgroud)

创建一个新的排序数组[基于所有值并且对多个数字具有相同的等级]:

anOrder = [[ 6,  4,  9,  8,  8]
           [ 2,  1,  7,  5,  4]
           [ 3,  3,  8,  7,  8]
           [ 4,  4,  7,  7,  8]
           [ 3,  4,  7,  8,  9]]
Run Code Online (Sandbox Code Playgroud)

谢谢你。

python arrays numpy ranking

2
推荐指数
1
解决办法
2478
查看次数

具有 k 个部分的排序和非排序整数分区

对于正整数nk,令“ n的k分区”为加起来为n 的k个不同正整数的排序列表,并令给定的n的k分区的“排名”为其在列表中的位置。所有这些列表按字典顺序排序的列表,从 0 开始。

例如,有两个 5 的 2 分区(n  = 5,k  = 2):[1,4] 和 [2,3]。由于 [1,4] 按字典顺序位于 [2,3] 之前,因此 [1,4] 的排名为 0,[2,3] 的排名为 1。

所以,我希望能够做两件事:

  • 给定nknk分区,我想找到n的k分区的排名。
  • 给定nk和一个等级,我想找到具有该等级的n的k分区。

我可以在不必计算感兴趣的分区之前的n的所有k分区的情况下执行此操作吗?

这个问题与其他问题不同,因为我们在这里讨论整数分区而不仅仅是组合。

arrays algorithm combinations ranking integer-partition

2
推荐指数
1
解决办法
481
查看次数

mySQL排名(和绘制)

下周末我们将参加一场半决赛和决赛的3项资格赛.只有最好的15名参赛者才能参加半决赛.只有最好的6人参加总决赛.

在资格证书中,每个资格证书的分数从0到100

我正在寻找一种方法来选择半决赛的比赛者.这应该基于(资格等级1)*(资格等级2)*(资格等级3)

所以我需要这样的东西:

select id, name, ((.... as RANK_OF_SCORE_1) * (.. as RANK_OF_SCORE_2) * (... as     RANK_OF_SCORE_3)) as qualification_score from participants order by qualification_score desc limit 15
Run Code Online (Sandbox Code Playgroud)

但当然这不是有效的mySQL.

除了这个问题,如果竞争者有相同的分数,他们应该都包括在半决赛中,即使这超过15的最大值.

对于决赛,我们希望选择半决赛中最好的6分.如果2分相同,我们想在资格上选择..

mysql ranking

1
推荐指数
1
解决办法
899
查看次数

如何以期望的方式对这些记录进行排名/过滤

以下是以下的示例数据: -

emp doa
1   2014-01-01 00:00:00.000
1   2014-01-05 00:00:00.000
1   2014-01-08 00:00:00.000
1   2014-01-12 00:00:00.000
1   2014-01-15 00:00:00.000
2   2014-01-01 00:00:00.000
2   2014-01-05 00:00:00.000
2   2014-01-10 00:00:00.000
2   2014-01-12 00:00:00.000
2   2014-01-15 00:00:00.000
3   2014-01-01 00:00:00.000
3   2014-01-05 00:00:00.000
4   2014-01-10 00:00:00.000
4   2014-01-12 00:00:00.000
4   2014-01-15 00:00:00.000
Run Code Online (Sandbox Code Playgroud)

doa - 分配项目的日期

要求是选择最接近今天的记录 - 给予过去日期更高的偏好 - 这将表明当前的分配.

预期结果如下─

emp doa
1   2014-01-08 00:00:00.000
2   2014-01-05 00:00:00.000
3   2014-01-05 00:00:00.000
4   2014-01-10 00:00:00.000
Run Code Online (Sandbox Code Playgroud)

我有一些限制: -

  • 数据库(表)无法更改 - 规范化是不可能 …

sql sorting ranking sql-server-2008-r2

1
推荐指数
1
解决办法
65
查看次数

如何在R中更改具有排名值(有序值)的值?当两个值相关时,我想给出相同的数字

我的数据有一个ID列,我想将ID重命名为排名.换句话说,我想重命名所有35-> 1,所有39-> 2,所有66-> 3所有77-> 4和所有90-> 5来自以下数据.
我试图使用秩函数但我无法处理两个并列值.我想为id中的两个绑定值给出相同的数字(例如,所有35得到1).
如何将每个ID更改为升序号?

ID
--
35
35
35
35
39
39
39
66
66
66
66
77
77
90
90
90
Run Code Online (Sandbox Code Playgroud)

r ranking

1
推荐指数
1
解决办法
1164
查看次数

在不破坏Python关系的情况下排列列表

我需要将rank归因于列表的元素,同时确保绑定元素获得相同的排名.

例如:

data = [[1],[3],[2],[2]]

c = 0

for i in sorted(data, reverse=True):
    i.append(c+1)
    c += 1

print data
Run Code Online (Sandbox Code Playgroud)

收益:

[[1, 4], [3, 1], [2, 2], [2, 3]]
Run Code Online (Sandbox Code Playgroud)

排名附加到分数的位置.

我需要更改为这个简单的代码,而不是获取:

[[1, 3], [3, 1], [2, 2], [2, 2]]
Run Code Online (Sandbox Code Playgroud)

得分为2的元素被绑定并且两者都获得第二名,而前面第四名的1被提升到第三名?

python list ranking python-2.7

1
推荐指数
1
解决办法
625
查看次数

如何在单个Teradata查询中输出不同的第25,第50,第75百分位数?

几个小时后,我被困在类似的东西上,并在一个Teradata查询中输出了一个不那么混乱的代码,用于输出25%,50%,75%的百分位数.可以进一步扩展以产生" 5点总结 ".根据您的人口估计值,最小和最大变化静态值.

有人要求优雅的方法.分享我的.

这是代码:

SELECT MAX(PER_MIN) AS PER_MIN,
       MAX(PER_25) AS PER_25,
       MAX(PER_50)  AS PER_50,
       MAX(PER_75)  AS PER_75,
       MAX(PER_MAX) AS PER_MAX
FROM (SELECT CASE WHEN ROW_NUMBER() OVER(ORDER BY DURATION_MACRO_CURR ASC) = CAST(COUNT(*) OVER() * 0.01 AS INT) THEN DURATION_MACRO_CURR END AS PER_MIN,
             CASE WHEN ROW_NUMBER() OVER(ORDER BY DURATION_MACRO_CURR ASC) = CAST(COUNT(*) OVER() * 0.25 AS INT) THEN DURATION_MACRO_CURR END AS PER_25,
             CASE WHEN ROW_NUMBER() OVER(ORDER BY DURATION_MACRO_CURR ASC) = CAST(COUNT(*) OVER() * 0.50 AS INT) THEN DURATION_MACRO_CURR END AS PER_50 …
Run Code Online (Sandbox Code Playgroud)

sql ranking teradata percentile quartile

1
推荐指数
1
解决办法
5437
查看次数