[問題] 稀疏矩陣的rank計算已回收
一個矩陣A的rank
可以由 rank(A) 來得到
但如果A是稀疏矩陣
rank(A) 就會傳回
================================================
??? Error using ==> svd
Use svds for sparse singular values and vectors.
Error in ==> rank at 15
s = svd(A);
================================================
我嘗試過開另一個m檔,把rank 裡面的 svd 改成 svds 後執行
沒有出現錯誤,但是答案不對
因為A太大不能先 full(A)
所以請問稀疏矩陣的rank要如何求得?
找到方法了...
把 rank.m 裡的
s = svd(A);
改成
s = svds(A,max(size(A)'));
然後存成新的m檔就可以了
--
blog:http://etrex.blogspot.com/
site:http://web.ntust.edu.tw/~B9409041/
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.118.9.202
→
07/13 20:58, , 1F
07/13 20:58, 1F
→
07/14 10:32, , 2F
07/14 10:32, 2F
※ 編輯: etrexetrex 來自: 140.118.9.202 (07/14 10:50)
→
07/14 10:53, , 3F
07/14 10:53, 3F
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章