matlab學習筆記 函數bsxfun repmat
函數bsxfun
【功能描述】兩個數組間元素逐個計算.
【應用場合】當我們想對一個矩陣A的每一列或者每一行與同一個長度相等的向量a進行某些操作(比較大小,乘除等)時,我們只能用循環方法或者利用repmat函數將要操作的向量a複製成和A一樣尺寸的矩陣,進而進行操作。從MATLABR2007a開始,再遇到類似的問題時,我們有了簡潔高效的方法,即利用bsxfun函數。【函數描述】C=bsxfun(fun,A,B):兩個數組間元素逐個計算,fun是函數句柄或者m文件,也可以為如下內置函數@plus 加@minus 減@times 數組乘@rdivide 左除@ldivide 右除For example:如何將一個矩陣的每行或每列元素分別擴大不同的倍數?如[1 2 3;4 56 ;7 8 9],第一列元素乘以1,第二列元素以2,第三列元素乘以4。利用bsxfun函數,可以給出下列代碼:a = [1,2,3;4,5,6;7,8,9];acol = bsxfun(@times,a,[1 2 4])
Matlab中repmat函數用法
複製和平鋪矩陣函數 repmat格式 B =repmat(A,m,n)%將矩陣A複製m×n塊,即B由m×n塊A平鋪而成。B = repmat(A,[mn])%與上面一致B = repmat(A,[m n p…])%B由m×n×p×…個A塊平鋪而成repmat(A,m,n)%當A是一個數a時,該命令產生一個全由a組成的m×n矩陣。
B=repmat(A,m,n):把矩陣A複製n*m份,並堆疊構成矩陣B,矩陣B的大小為[size(A,1)*m,size(A,2)*n]。
分享:
2
喜歡
0
贈金筆 閱讀(1790)┊ 評論 (5)┊ 收藏(0) ┊轉載(17) ┊ 喜歡▼ ┊列印┊舉報
已投稿到: | 排行榜 |
---|
前一篇:[轉載]校名中含「科技」的大學一覽 後一篇:matlabcrossvalcrossvalidation
推薦閱讀:
※無量壽經科注第四回學習班 (第七十三集)
※無量壽經科註第四回學習班【第126集】
※關於學習的座右銘
※精選的10張截圖,要這樣思考與學習!