[討論] Cell相鄰數值合併

看板MATLAB作者 (ice)時間7年前 (2016/10/19 07:22), 7年前編輯推噓0(004)
留言4則, 1人參與, 最新討論串1/1
各位大大好... 小弟處理資料時 有一個56*1的Cell 每個Cell裡的長度可能不一 例如A=[68 83 67] B=[68 84 47 78 66 31995 32113] 小弟想將每一列"相鄰"的數值合起來 變成像是A=[688367] B=[68844778663199532113] 這樣的型態 已爬過文章 用過像是cat horzcat等但仍無法解決 想利用cellfun又因A B的長度不一樣無法使用 想請求各位大大的幫助 謝謝大家!! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.193.237.117 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1476832972.A.EAB.html

10/19 16:28, , 1F
謝謝各位,已經找出方法了!
10/19 16:28, 1F

10/19 16:30, , 2F
先用num2str,將這些數值轉換成char格式
10/19 16:30, 2F

10/19 16:31, , 3F
再用strrep,此時相鄰的數字已可以合起來了
10/19 16:31, 3F

10/19 16:32, , 4F
最後再用cellstr,還有cellfun,此時數字已全為double格式!
10/19 16:32, 4F
附上程式碼 for i=1:length(C) C_test{i,4}=num2str(C_test{i,3}); end C_test2=C_test(1:end,4); C_test2=strrep(C_test2, ' ', ''); C_test3=cellstr(C_test2); C_test3=cellfun(@str2num,C_test3); ※ 編輯: ice77 (123.193.237.117), 10/19/2016 16:32:36
文章代碼(AID): #1O1gxCwh (MATLAB)