91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何獲取numpy的array中前N個最大值

發布時間:2022-02-25 16:13:47 來源:億速云 閱讀:420 作者:iii 欄目:開發技術

本文小編為大家詳細介紹“如何獲取numpy的array中前N個最大值”,內容詳細,步驟清晰,細節處理妥當,希望這篇“如何獲取numpy的array中前N個最大值”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

主要應用了argsort()函數,函數原型:

numpy.argsort(a, axis=-1, kind='quicksort', order=None)
'''
Returns the indices that would sort an array.
Perform an indirect sort along the given axis using the algorithm specified by the kind keyword. It returns an array of indices of the same shape as a that index data along the given axis in sorted order.
'''
Parameters: 
a : array_like
Array to sort.
 
axis : int or None, optional
Axis along which to sort. The default is -1 (the last axis). If None, the flattened array is used.
 
kind : {‘quicksort', ‘mergesort', ‘heapsort', ‘stable'}, optional
Sorting algorithm.
 
order : str or list of str, optional
When a is an array with fields defined, this argument specifies which fields to compare first, second, etc. A single field can be specified as a string, and not all fields need be specified, but unspecified fields will still be used, in the order in which they come up in the dtype, to break ties.
 
Returns: 
index_array : ndarray, int
Array of indices that sort a along the specified axis. If a is one-dimensional, a[index_array] yields a sorted a. More generally, np.take_along_axis(a, index_array, axis=a) always yields the sorted a, irrespective of dimensionality.

示例:

import numpy as np
top_k=3
arr = np.array([1, 3, 2, 4, 5])
top_k_idx=arr.argsort()[::-1][0:top_k]
print(top_k_idx)
#[4 3 1]

補充:python topN / topK 取 最大的N個數 或 最小的N個數

import numpy as np
a = np.array([1,4,3,5,2])
b = np.argsort(a)
print(b)

print結果[0 4 2 1 3]

說明a[0]最小,a[3]最大

a[0]<a[4]<a[2]<a[1]<a[3]

補充:利用Python獲取數組或列表中最大的N個數及其索引

看代碼吧~

import heapq
 
a=[43,5,65,4,5,8,87]
re1 = heapq.nlargest(3, a) #求最大的三個元素,并排序
re2 = map(a.index, heapq.nlargest(3, a)) #求最大的三個索引    nsmallest與nlargest相反,求最小
print(re1)
print(list(re2)) #因為re2由map()生成的不是list,直接print不出來,添加list()就行了

結果:

re1:[87, 65, 43]

re2:[6, 2, 0]

讀到這里,這篇“如何獲取numpy的array中前N個最大值”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

涟水县| 安塞县| 全南县| 大石桥市| 泰兴市| 德清县| 巴林左旗| 廊坊市| 潞城市| 石河子市| 玉屏| 比如县| 柏乡县| 那曲县| 贵溪市| 富源县| 锡林郭勒盟| 华蓥市| 石林| 石景山区| 南城县| 济宁市| 都江堰市| 海南省| 临沭县| 许昌市| 萍乡市| 广汉市| 长海县| 拉孜县| 获嘉县| 外汇| 南宁市| 台湾省| 卢氏县| 通州区| 洛宁县| 若羌县| 旌德县| 湛江市| 威远县|