例如: B=[1 2 3 4 5] A[k+1]=B[k] B有5個元素,A有6個元素,先對A進行初始化,然后為A中的元素賦值: A=zeros(1,length(B)+1); %A比B多一個元素,為1行,length(B)+1列的全0向量 for i=1:length(B) A(i+1)=B(i); % A[k+1]=B[k] end matlab中向
在Matlab中創建一維數組是最為基礎的操作了,他們的創建方法比較簡單,也是創建高維數組的基礎條件,本文將介紹四種創建一維數組的方法。
材料/工具
matlab
a = zeros(1,N) 建立一個1行N列的數組,初值為0,一般不需要用for的
方法
在Matlab的命令窗口中,直接輸入數據,使用【分號;】或者【空格 】創建一維數組。例如輸入: data1=[pi;log(5);7+6;2^3] 得到: data1=[pi;log(5);7+6;2^3] 輸入: data2=[pi log(5) 7+6 2^3] 得到: data2 = 3.1416 1.6094 13.0000 8.0000
使用函數zeros(m,n),其中m、n指零矩陣的行列,要定義一維全零數組,如下即可:zeros(1,n)
步長生成法的通用格式為【a:inc:b】其中a表示數組的第一個元素,inc表示數組之間的間隔,b表示數組對方最后一個元素。注:inc可以省略,默認的數值是1。 例如輸入: data3=2:2:10 得到: data3 = 2 4 6 8 10 輸入: data4=2:10 得到: data4 = 2 3 4 5 6 7 8 9 10
如圖所示是我們創建了一個矩陣,創建新 1 然后在彈出的表格中選中需要更改的單個 2 我們也可以通過語句來實現對矩陣單個元 3 假如我們輸入的行數和列數大于原來的矩 4 我們可以看到矩陣會自
定數線性采樣法的通用格式為:【x=linspace(a,b,n)】該方法是在設定“總個數”的條件下均勻采樣發布生成的一維數組。其中a和b代表數組的第一個和最后一個元素,n代表采樣的點數。例如 輸入: data5=linspace(2,10,5) 得到: data5 = 2 4 6 8 10
zeros(m,n) 生成全零的mxn矩陣 m,n其中一個為1,就是一維數組,看你需要行方向還是列方向
定數對數采樣法的通用格式:【x=logspace(a,b,n)】 該方法是在設定“總個數”的條件下經過“采用對數”采樣生成一維數組例如 輸入: data6=logspace(1,5,10) 得到: data6 = 1.0e+05 * 0.0001 0.0003 0.0008 0.0022 0.0060 0.0167 0.0464 0.1292 0.3594 1.0000
如果各個數組的長度一樣,可以直接用矩陣的每一列或每一行代表一個數組。 如果各個數組長度不一樣,可以用細胞類型存儲,每個細胞元就是一個數組。比如A{1}=[1,2,3,4];A{2}=[5,6,7];
擴展閱讀,以下內容您可能還感興趣。
matlab中,怎么把幾個一維數組合成一個一維數組。
比如有已知數組a,b,c.......n,然后用下面的語句實現:
m=[a b c ........n]中間的數組用逗號或者空格隔開就可以了,此類問題可參看matlab基礎書籍,希望對你有幫助。
matlab中一維數組怎么用plot函數畫圖 像a=[1,2,3,4] 用plot怎么表達出來?
直接 plot(a) 就行了;
我想用matlab創建一個十個數一維數組,其中包括4個5,3個4,2個2,1個1。
這個簡單:
clc;clear alla=[5 5 5 5 4 4 4 2 2 1]';
aa=a;
b=rand(10,1);
for i=1:10
Nmax=find(b==max(b));
aa(i)=a(Nmax);
b(Nmax)=-1;
end
disp(aa)%這就是你想要的aa
關于matlab的一維數組簡單問題
看樓主的描述,原數據應該是1*256的向量,設為a吧
那么b=a(2:end)就可以了,或者說a(1)=[];
matlab中怎樣將一維數組轉化為二維矩陣
可以用reshap(),也可以直接“捋直”了。
為了清晰點,給你舉個例子吧:
a=[1,2;3,4;];
b=a(:);
c=reshape(a,[],1);
得到的b,c都是一樣的一維列向量。
reshape介紹:
reshape函數重新調整矩陣的行數、列數、維數。在matlab命令窗口中鍵入docreshape或helpreshape即可獲得該函數的幫助信息。
用法:
B = reshape(A,m,n)
B = reshape(A,m,n,p,...)
B = reshape(A,[m n p ...])
B = reshape(A,...,[ ],...)
B = reshape(A,siz)
程序示例:
close all; clear; clc;
A = [1 2 3; 4 5 6; 7 8 9; 10 11 12] % 4 by 3
B = reshape(A, 2, 6) % 2 by 6
% C = reshape(A, 2, 4) % error
% D = reshape(A, 2, 10) % error
E = reshape(A, 2, 3, 2) % 2 by 3 by 2
注意:reshape函數對原數組的抽取是按照列抽取的(對原數組按列抽取,抽取的元素填充為新數組的列)
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com