[請益] 關於加總的問題...

看板MATLAB作者 (紫夜)時間6年前 (2018/01/04 22:08), 編輯推噓3(302)
留言5則, 2人參與, 6年前最新討論串1/1
大家好 對Matlab沒有很熟 最近在做一個程式 由於速度實在太慢 於是後來想要把所有for迴圈都用矩陣的形式寫 但有個地方我有點卡住不知道該怎麼做... 希望能有大大幫忙一下 問題如下 for k=1:m p(k,:)=p0+sum(x(252*(k-1)+1:252*k,:)); end x是一個252m*n的矩陣 p則是一個m*n的矩陣,p0是1*n 基本上我是想要把每252個row加總成1個row x裡第幾個 252row加總 就是p的第k row 這樣 麻煩各位大大了 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.46.55.155 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1515074883.A.6E6.html

01/04 22:53, 6年前 , 1F
p=reshape(p0+sum(reshape(x,252,[])),m,[]);
01/04 22:53, 1F

01/04 23:09, 6年前 , 2F
阿 sorry 我以為你p0是常數
01/04 23:09, 2F

01/04 23:11, 6年前 , 3F
p=p0(ones(m,1),:)+reshape(sum(reshape(x,252,[])),m,[
01/04 23:11, 3F

01/04 23:11, 6年前 , 4F
]);
01/04 23:11, 4F

01/04 23:59, 6年前 , 5F
感謝profyang大!!
01/04 23:59, 5F
文章代碼(AID): #1QJZL3Rc (MATLAB)