Re: 請問矩陣如何把數字取代成文字?

看板MATLAB作者 (KAI)時間10年前 (2014/06/13 21:39), 編輯推噓4(402)
留言6則, 5人參與, 最新討論串2/2 (看更多)
個人是想到這樣寫 u = [0 0 0 0 0 0 0 0 0 0 0 0 0 ; 0 0 0 0 0 0 0 0 0 0 0 0 0 ; 0 0 0 0 0 0 0 0 0 0 0 0 0 ; 0 0 0 0 0 0 0 0 0 0 0 0 0 ; 99 99 99 99 99 99 99 0 0 0 0 0 0 ; 0 99 99 99 99 99 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0 0 0 0 0 0 ; 0 0 0 0 0 0 0 0 0 0 0 0 0 ]; m = ones(1,size(u,1)); n = ones(1,size(u,2)); v = mat2cell(u , m , n ); y = cellfun(@(x) strrep(num2str(x),'99','T1'), v , 'UniformOutput', false ); 不過感覺還有更好的寫法 = = -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.135.241.194 ※ 文章網址: http://www.ptt.cc/bbs/MATLAB/M.1402666774.A.C22.html

06/14 07:44, , 1F
其實用cellfun速度還比一個個for 還慢 cellfun不快
06/14 07:44, 1F

06/14 12:29, , 2F
感謝告知^^
06/14 12:29, 2F

06/16 16:15, , 3F
長知識...一直以為cellfun比較快@@
06/16 16:15, 3F

06/17 10:20, , 4F
一直以為cellfun是叫我們不用做寫for這種傻事,想不到@@
06/17 10:20, 4F

06/17 12:49, , 5F
可以直接用num2cell,不過for確實比cellfun快。
06/17 12:49, 5F

06/17 15:44, , 6F
跟4F一樣...
06/17 15:44, 6F
文章代碼(AID): #1JclyMmY (MATLAB)
文章代碼(AID): #1JclyMmY (MATLAB)