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

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

從稀疏矩陣的非零值中減去向量

從稀疏矩陣的非零值中減去向量

我想從稀疏矩陣的非零值中減去一個(gè)向量,例如     [,1] [,2] [,3] [,4][1,]    0    0    4    0[2,]    0    5    0    3[3,]    1    2    0    0這是我試圖減去的向量:[1 2 3]所以我最終需要的是:     [,1] [,2] [,3] [,4][1,]    0    0    3    0[2,]    0    3    0    1[3,]   -2   -1    0    0我通過(guò)使用來(lái)做到這一點(diǎn),但是當(dāng)我使用整個(gè)數(shù)據(jù)集時(shí),它會(huì)消耗我的內(nèi)存。sparse_matrix.A附言:矩陣的尺寸太大,我不想使用循環(huán)!
查看完整描述

1 回答

?
一只甜甜圈

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

讓我們從設(shè)置問(wèn)題開(kāi)始,并使用csr_matrix來(lái)構(gòu)建稀疏矩陣:scipy.sparse


from scipy.sparse import csr_matrix


a = np.array([[0, 0, 4, 0],

              [0, 5, 0, 3],

              [1, 2, 0, 0]])


a_sp = csr_matrix(a, dtype=np.int8)

b = np.array([1,2,3])

我們可以找到稀疏矩陣的非零位置,csr_matrix.nonzero,并使用坐標(biāo)對(duì)1d稠密數(shù)組進(jìn)行索引。然后通過(guò)在稀疏矩陣上索引來(lái)減去相應(yīng)的坐標(biāo):rownonzero


nz = a_sp.nonzero()

a_sp[nz] -= b[nz[0]]


print(a_sp.toarray())


array([[ 0,  0,  3,  0],

       [ 0,  3,  0,  1],

       [-2, -1,  0,  0]])


查看完整回答
反對(duì) 回復(fù) 2022-09-27
  • 1 回答
  • 0 關(guān)注
  • 94 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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