Re: [問題] 矩陣問題已回收
※ 引述《angel990 (薰)》之銘言:
: 最近剛開始接觸 還是個新手
: 請問大家矩陣的問題
: 假設有兩個矩陣
: a 20 10 b 10 5
: 35 30
: . .
: . .
: 200列
: 請問可以用迴圈的方法求出 a的每一列 減b 的值 然後第一行與第二行加總嗎?
: 現在卡在可以求出10 5
: 但是a的第二列以後減b 可以用迴圈嗎?
: 一列一列求出來也真夠累人了
: 200列求出來之後還要分別求第一行與第二行加總 = =
: 謝謝
你應該a和b都知道了 所以我程式用簡單例子來做
a=[25 10;35 30;45 55];
b=[10 5];
方法1:迴圈法
迴圈內每次取第i列出來和b運算 算完後用sum相加
for i=1:size(a,1)
sum(a(i,:)-b)
end
方法2:repmat
因為每一列要減的值都是b 所以可將b的維度改變
直接用矩陣相減
c=repmat(b,size(a,1),1)
sum(a-c,2)
上面兩行也可精簡為
sum(a-repmat(b,size(a,1),1),2)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.32.82.2
討論串 (同標題文章)
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章