[問題] 矩陣的邏輯判斷已回收

看板MATLAB作者 (阿康)時間16年前 (2010/03/23 15:31), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串1/2 (看更多)
一個矩陣a(12*8) 0 0 0 0 0 0 0 0 0 1 0 1 0 1 1 1 1 0 0 0 1 1 0 0 0 1 1 1 0 0 1 0 1 1 0 1 0 0 1 1 1 0 1 1 1 0 1 1 1 0 0 0 1 1 1 1 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 0 1 1 1 1 1 0 0 1 0 1 1 1 0 1 0 0 0 0 0 1 1 1 1 b=cell2mat(cellfun(@(x)(sum(sum(x))),mat2cell(a,repmat(12/4,4,1), repmat(8/4,4,1)),'uni',false)) 每3*2格分為一群並將內容"相加"成為一新的4*4矩陣b 將每3*2格分為一群並將儲存格內容"相加"成為一新的4*4矩陣(12/3=4, 8/2=4) "2" 1 3 2 4 5 1 5 2 3 5 6 2 4 5 3 新矩陣的平均值是3.3 希望將<3的值都變成3 調整的機制是將舊矩陣中對應的資料修改 比如說第一格的"2"對應的是 0 0 0 1 1 0 將其改成 1 0 0 1 1 0 這樣加總值就變成3了, 挑選哪個0不限定,但不能將1改成2 請問有辦法利用matlab做到嗎? 謝謝大家. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.114.53.222

04/18 15:50, , 1F
以解決 感謝
04/18 15:50, 1F
文章代碼(AID): #1Bg6vRlX (MATLAB)
文章代碼(AID): #1Bg6vRlX (MATLAB)