python陣列排名

2021-10-09 01:38:31 字數 671 閱讀 7701

因為最近要用到kendalltau(ktau)這個指標,就是反應兩組序列的等級的相關係數

所以需要對陣列進行排名

如 [2,4,3]的排名就應該返回[0,2,1]

然後想起numpy裡面有個argsort,可以返回陣列排序後的索引

(然後我就以為argsort的返回值就是排名了。。。。。)

其實並不是!!!是索引!!!

如果要得到排名我自己寫了一下:

import numpy as np

result =[2

,4,3

]# input result as a tuple

result_arg = np.argsort(result)

result_rank = np.zeros(

len(result_arg)

)for i in

range

(len

(result_arg)):

result_rank[result_arg[i]

]= i

result_rank才是對result的排名

困擾了我兩三天的問題終於找到了(嘆氣,問題總是出在細節上)

要仔細一點!!!

同時剛才查到scipy.stats.rankdata好像也可以排名,有興趣的朋友可以嘗試下~

D Multiset(帶排名的陣列陣列)

題 題意 有個multiset,開始有n個數,有倆種操作,1 加入ki。2 刪除集合中第k小的,問最後若這個集合大小不為0輸出任意乙個數,否則輸出0 分析 由於記憶體要求,不可用splay之類的資料結構,也有點大材小用,那麼考慮用樹狀陣列處理,這裡有個排名的問題,要是我們知道排名的數是哪個就基本能用...

js陣列中資料排名

實現輸入陣列 var arr new array 40,20,30,50 返回結果 2,4,3,1 即50的在40,20,30,50中排第一,40排第二,30的排第三,20排第四。js 如下 開始 var arr new array 40,20,30,50 function sortbynumber...

python爬取大學排名,電影的排名與評分

這裡爬取的都是靜態的資料,也沒有設計到跨頁爬取,也沒有用到正規表示式,這就是乙個簡單的爬取 爬取最好大學網的排名 coding gbk import requests from bs4 import beautifulsoup import bs4 defgethtmltext url try r ...