?講解視頻:可以在bilibili搜索《MATLAB教程新手入門篇——數(shù)學建模清風主講》。?
MATLAB教程新手入門篇(數(shù)學建模清風主講,適合零基礎(chǔ)同學觀看)_嗶哩嗶哩_bilibili
節(jié)選自第3章? ?3.3.1 矩陣的創(chuàng)建方法
在MATLAB中,矩陣的創(chuàng)建方法主要有三種,分別是:直接輸入法、函數(shù)創(chuàng)建法和導入本地文件中的數(shù)據(jù)。大家可以打開本節(jié)的配套代碼:“code_3_3_1”進行學習。
(1)直接輸入法
我們先來看直接輸入法,直接輸入法適用于矩陣中元素數(shù)量較少的情況。
輸入矩陣時要以中括號“[ ]”作為標識符號,矩陣的所有元素必須都在中括號內(nèi)。矩陣的同行元素之間用空格或逗號分隔,行與行之間用分號或回車鍵分隔。
例如:命令a = [1 2 3; 4 5 6];?可以在工作區(qū)創(chuàng)建出變量名為a的矩陣。
(2)函數(shù)創(chuàng)建法
MATLAB提供了一些函數(shù),這些函數(shù)可以用來生成某些特定的矩陣,我們這里介紹幾組最常用到的函數(shù)。
第一組函數(shù): zeros、ones和eye。這三個函數(shù)分別用來創(chuàng)建全為0的矩陣、全為1的矩陣和單位矩陣。
以zeros函數(shù)為例,其常見的用法有兩種:(1)zeros(n)可以創(chuàng)建一個n行n列全為0的矩陣;(2)zeros(m,n)可以創(chuàng)建一個m行n列全為0的矩陣。
例如:
ones和eye的用法類似,大家可以看配套的講解視頻或者查看MATLAB的幫助文檔。
第二組函數(shù): rand、randi和randn。這三個函數(shù)分別用來創(chuàng)建均勻分布的隨機數(shù)、均勻分布的隨機整數(shù)和標準正態(tài)分布的隨機數(shù),以后會大量用到,請大家熟記。(數(shù)據(jù)的分布是概率論里面的知識點,沒學過的同學可以搜索關(guān)鍵詞自學)
rand函數(shù)用來創(chuàng)建區(qū)間0和1內(nèi)均勻分布的隨機數(shù),其最常用的方法有兩種:(1)rand(n)可以創(chuàng)建一個n行n列的隨機數(shù)矩陣;(2)rand(m,n)可以創(chuàng)建一個m行n列的隨機數(shù)矩陣。由rand函數(shù)創(chuàng)建的隨機數(shù)矩陣的每個元素都隨機取樣自0和1之間的均勻分布。
randi函數(shù)用來創(chuàng)建均勻分布的隨機整數(shù),其最一般的用法為:randi([imin,imax],m,n),該命令可創(chuàng)建一個m行n列的隨機數(shù)矩陣,隨機數(shù)矩陣中的每個元素都是從區(qū)間[imin,imax]內(nèi)隨機抽取的整數(shù)。舉個例子,假設(shè)我們要模擬投擲100次骰子,骰子有6個面,那么我們可以使用randi([1,6],1,100)得到一個長度為100的行向量,向量中的每個元素都是取自1,2,3,4,5,6中的一個整數(shù)。另外,如果imin等于1,那么可以簡寫為randi(imax,m,n);如果m和n相同,即生成一個n行n列的方陣,那么可以直接寫成randi([imin,imax],n)。
randn函數(shù)用來創(chuàng)建標準正態(tài)分布的隨機數(shù),其使用方法和rand函數(shù)類似:(1)randn(n)可以創(chuàng)建一個n行n列的隨機數(shù)矩陣;(2)randn(m,n)可以創(chuàng)建一個m行n列的隨機數(shù)矩陣。由randn函數(shù)創(chuàng)建的隨機數(shù)矩陣的每個元素都隨機取樣自標準正態(tài)分布。
注意:因為我們生成的是隨機數(shù),所以每次運行的結(jié)果可能會變化。除了上述這幾個函數(shù)外,MATLAB還提供了其他一些與隨機數(shù)生成相關(guān)的函數(shù),感興趣的同學可以在MATLAB官網(wǎng)搜索關(guān)鍵詞:隨機數(shù)。
第三組函數(shù):diag和blkdiag。
diag函數(shù)可用來創(chuàng)建對角矩陣或者獲取矩陣的對角元素
情況1:如果輸入的第一個參數(shù)是向量,則表示創(chuàng)建對角矩陣。
??? diag(v, k) 將向量v的元素放置在第k條對角線上,其他位置元素為0。
??? k=0 表示主對角線,k>0 位于主對角線上方,k<0 位于主對角線下方。
??? 如果k=0, 可以直接寫成diag(v)。
情況2:如果輸入的第一個參數(shù)是矩陣,則表示獲取矩陣的對角元素。
??? diag(A,k) 返回A的第k條對角線上元素的構(gòu)成的列向量。
blkdiag函數(shù)可用來創(chuàng)建分塊對角矩陣。
分塊對角矩陣是相對于常規(guī)的對角矩陣而言的,常規(guī)的對角矩陣沿對角線具有單個元素,而分塊對角矩陣的對角線的元素是矩陣。我們可采用以下形式表示一個分塊對角矩陣:
(3)導入本地文件中的數(shù)據(jù)
MATLAB可讀取本地的文件,支持的常見格式如下:
-
??.txt、.dat 或 .csv(適用于帶分隔符的文本文件)
-
??.xls、.xlsb、.xlsm、.xlsx、.xltm、.xltx 或 .ods(適用于電子表格文件)文章來源:http://www.zghlxwxcb.cn/news/detail-832762.html
由于這一塊的內(nèi)容比較豐富且可能涉及我們沒學過的知識點,所以會放在后面的章節(jié)進行講解。到時候我們會重點學習MATLAB菜單欄:“主頁——導入數(shù)據(jù)”這個功能。文章來源地址http://www.zghlxwxcb.cn/news/detail-832762.html
到了這里,關(guān)于MATLAB知識點:矩陣的創(chuàng)建方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!