Re: [問題] 矩陣特定位置修改數值

看板MATLAB作者 ( )時間14年前 (2012/02/17 16:17), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串2/3 (看更多)
我的方法是 令一個B矩陣 利用eye和ones函數 做出一個遮罩 再把A矩陣和B矩陣每個元素相乘 不知道有沒有更好的作法 close all clear all clc A = [ 1 2 3 4 5 ; 6 7 8 9 10 ; 11 12 13 14 15 ; 16 17 18 19 20 ; 21 22 23 24 25 ] ; InitialRow=1 ; InitialCol=4 ; row=InitialRow:length(A(:,1))-InitialCol+1 ; col=InitialCol:length(A(1,:)) ; B=ones(size(A)) ; B(row,col)=ones(length(row),length(col))-eye(length(row),length(col)) ; C=A.*B ; disp(A) ; disp(B) ; disp(C) ; 修改InitialRow和InitialCol 可改變開始第一個變成0的元素的位置 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.103.220

02/17 16:21, , 1F
啊 樓上方法快好多 orz
02/17 16:21, 1F

02/17 17:31, , 2F
也感謝您。
02/17 17:31, 2F
文章代碼(AID): #1FFWqhci (MATLAB)
文章代碼(AID): #1FFWqhci (MATLAB)