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

作者: gary32217 (KAI)   2014-06-13 21:39:30
個人是想到這樣寫
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 );
不過感覺還有更好的寫法 = =
作者: jatj   2014-06-14 07:44:00
其實用cellfun速度還比一個個for 還慢 cellfun不快
作者: gary32217 (KAI)   2014-06-14 12:29:00
感謝告知^^
作者: kurt28   2014-06-16 16:15:00
長知識...一直以為cellfun比較快@@
作者: kimutaka (保持對生命的熱情)   2014-06-17 10:20:00
一直以為cellfun是叫我們不用做寫for這種傻事,想不到@@
作者: sunev (Veritas)   2014-06-17 12:49:00
可以直接用num2cell,不過for確實比cellfun快。
作者: kurt28   2014-06-17 15:44:00
跟4F一樣...

Links booklink

Contact Us: admin [ a t ] ucptt.com