作者wadx1035 (OvercomerLin)
看板MATLAB
標題請問矩陣如何把數字取代成文字?
時間Fri Jun 13 11:24:34 2014
我有一個301*601的矩陣,裡面只有 0 和 99 兩種元素
如以下所示:
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
99999999999999 0 0 0 0 0 0
09999999999 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 取代成 T1,
如以下所示:
v=
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
T1T1T1T1T1T1T1 0 0 0 0 0 0
0T1T1T1T1T1T1 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
我本來想用 v(u==99)='T1'; 這招解決它,但是我錯了...矩陣內好像無法文字和數字
一起....
然而,我試著把元素存成cell來解決,但是cell無法使用find,找出每一個 99 取代成
T1。
請各位高手幫助我,給我一盞指路明燈吧....。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.64.239
※ 文章網址: http://www.ptt.cc/bbs/MATLAB/M.1402629877.A.A93.html
推 DoMau:先找到99的位址,再到CELL矩陣改呢? 06/13 13:46
→ celestialgod:u2=num2str(u);for i = 1:size(u2,1); 06/13 21:53
→ celestialgod:u2(i,:) = strrep(u2(i,:), '99', 'T1');end 06/13 21:53