第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何從包含最多 3 個(gè)值的 2d numpy 數(shù)組中獲取列的索引

如何從包含最多 3 個(gè)值的 2d numpy 數(shù)組中獲取列的索引

紅顏莎娜 2021-08-14 21:12:00
我有一個(gè)數(shù)組:a = np.array([[22,11,44,33,66],              [22,11,2,1,66],              [1,11,44,22,4],              [22,11,88,99,66]])作為輸出,我想要一個(gè)包含最大 3 個(gè)值的索引的數(shù)組作為二維數(shù)組。例如對(duì)于上面的數(shù)組輸出將是:array([[4,2,3],       [4,0,1],       [2,3,1],       [3,2,4]])
查看完整描述

1 回答

?
慕森卡

TA貢獻(xiàn)1806條經(jīng)驗(yàn) 獲得超8個(gè)贊

要獲取k數(shù)組的頂部元素,請(qǐng)對(duì)其進(jìn)行分區(qū)。由于分區(qū)通常為您提供k最低元素,請(qǐng)使用反向索引:


k = 3

top = np.argpartition(a, -k, axis=1)[:, -k:]

如果您需要按降序?qū)λ饕M(jìn)行排序,請(qǐng)np.argsort與結(jié)果一起使用:


rows = np.arange(a.shape[0])[:, None]

s = np.argsort(a[rows, top], axis=1)[:, ::-1]

top = top[rows, s]

rows當(dāng)您使用top和進(jìn)行花哨的索引時(shí),有必要確保正確選擇所有索引s。每行的索引必須顛倒 ( [:, ::-1]) 以獲得升序。


查看完整回答
反對(duì) 回復(fù) 2021-08-14
  • 1 回答
  • 0 關(guān)注
  • 184 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)