1樓:大野瘦子
a(:).'是把矩陣a轉換為一個行向量,就是一行。
例如:>> a = rand(2,3)
a =0.6925 0.3965 0.78020.5567 0.0616 0.3376>> b = a(:)
b =0.6925
0.5567
0.3965
0.0616
0.7802
0.3376
注意事項
a中逗號之前的:表示所有行,逗號之後的1:2:3表示列從1到3取值,步長為2,所以列能取到的值為1,3。
a(:)可以將向量轉換為列向量,行向量相當於直接轉置,列向量不變,而如果是n*m維向量則仍然是以列為主,即按照第一列,第二列的順序轉換為列向量。
而「 』 」在matlab中為轉置(共軛轉置),當矩陣含有虛部的時候會先共軛再轉置,因此當只需要轉置時要用」 .『 「,應當從平時就養成良好習慣轉置用.』,避免出現錯誤。
2樓:匿名使用者
a(:)作用是把矩陣a轉換為列向量,就是一列,你可以試一下。
至於.'是一般轉置的意思,這個你顯然知道。
綜合上面兩個可知a(:).'是把矩陣a轉換為一個行向量,就是一行。
補充:'是共軛轉置的意思。當矩陣a是實矩陣時,他和.'作用是一樣的,但當a是復矩陣時,二者是有區別的,具體可參見下面這個連結。
希望對你有所幫助,有問題歡迎追問,滿意請採納。
3樓:匿名使用者
a=[ ]的意思是a為空矩陣。一般用於矩陣 a 初始化(清零)。
4樓:匿名使用者
令a為空矩陣,大部分函式輸出顯示時會直接忽略掉空矩陣,這樣可以做到刪除矩陣的目的,也可以用來刪除矩陣中的某一行或一列
matlab中a=a(:).'是什麼意思
5樓:匿名使用者
a(:) 是把 a 變成一個一維的列向量。再用 .' 轉置就可以得到一維行向量了。
matlab中a(:,1)'是什麼意思
6樓:匿名使用者
matlab中a(:,1)'表示將二維矩陣a的第一列轉置為行向量。詳細說明如下:
a(x,y)表示二維矩陣第x行第y列位置的元素,x為:則表示所有的行。因此,a(:,1)就表示a的第1列的所有元素,這是一個列向量。
矩陣a右上角加一短撇(')即a'表示a的轉置矩陣——交換a的行列位置(當a為複數矩陣,是共軛轉置),因此a(:,1)'表示將矩陣a的第一列轉置,最終就得到了一個行向量。
下圖是以上文字說明的matlab**演示結果:
7樓:匿名使用者
如圖為例項,即是指矩陣a第一列的轉置矩陣。其中符號:表示列所有元素,1表示第一列,『表示轉置。
如果a(:,2)'則為第二列,a([1 2],1)'則為第一列第一二行的轉置。希望可以幫到你。
8樓:淚之夢幻
f(:,1)就是取f 矩陣的第1列。
f=[1,2,3; 3,4,6; 7,8,9]
f(:,1)
matlab中冒號的用法總結:
1)a:b 表示[a,a+1,……,b]
>> a=1:5
a =1 2 3 4
2)當然如果b-a不是整數的話,則向量的最後一位數是n+a,且n=fix(b-a)
>> a=1.2:4.9
a =1.2000 2.2000 3.2000 4.2000
3)上面的前提是ab則會出現空值
>> a=5:1
a =empty matrix: 1-by-0
此時 a是空矩陣,看workspace也可以看到a
4)a:c:b表示[a,a+c,……,a+n*c],其中n=fix((b-a)/c)
>> a=1:3:11
a =1 4 7 10
5)a:c:b在以下情況為空值
c>0,且ab
>> a=11:3:1
a =empty matrix: 1-by-0
6)a(:)表示以一列的方式顯示a中所有元素
>> a=[1 2 3;4 5 6]
a =1 2 3
4 5 6
>> a(:)
ans =14
253 6
7)b=a(i, :)表示把矩陣a的第i行存入b
>> b=a(1,:)
b =1 2 3
8)b=a( :,j)表示把矩陣a的第j列存入b
>> b=a(:,1)
b =1
49)b=a(j :k)表示把矩陣a中[a(j),a(j+1),...,a(k)]這些元素存入b中
>> b=a(3:5)
b =2 5 3
10)b=a(:,c:d)表示把矩陣a的第c到第d列存入b中,當然c,d大於a的列數則出錯(b=a(c:d,:)表示取行)
>> a=[1 2 3;4 5 6;7 8 9]
a =1 2 3
4 5 6
7 8 9
>> b=a(:,2:3)
b =2 3
5 6
8 9
9樓:hero會計
(1, :)表示:矩陣的第一行。
(2, :)表示:矩陣的第二行。
依次類推:
(x, :)表示:矩陣的第x行。
而(:,y)表示:矩陣的第y列。
10樓:天雲一號
在matlab中,a(:, 1:3)=表示將陣列a的第1到第3列刪除。
第一個冒號( : )表示取陣列a的所有行;
1:3表示取陣列a的第1到第3列。
具體的含義可以參考如下例項:
a=[1, 2, 3, 4, 5;
2, 3, 4, 5, 6;
3, 4, 5, 6, 7]; % 陣列a的大小為3*5a(:, 1:3)=; % 執行完該語句後,陣列a為:
a=[4, 5;
5, 6;
6, 7]; % 此時陣列a的大小為3*2
11樓:巨匯指導
在matlab中,a(a==inf)=0表示將陣列a中所有等於inf的元素都賦值為0。 a==inf表示取出陣列a中等於無窮大(inf)的元素的位置。 舉例說明如下:
a = [1, 2, inf, 4, 3; 2, inf, 2, inf, inf; inf, 2, 0, 3, inf]; a(a==inf)=0; % 執行完該語句後
12樓:匿名使用者
x(:,1)=a*y(:,1) %%% 矩陣a乘以y的第一列,所得的值賦給x的第一列
例如:>> a= [1 2;3 4];
>> y = [2 1;1 3];
>> x = zeros(2,2);
>> x(:,1) = a*y(:,1)
x =4 0
10 0
13樓:匿名使用者
代表把a矩陣的第一列進行轉置
1代表矩陣的第一列,冒號為省略行號
14樓:pl帶我離開
p1表示取m資料矩陣中的1至5列,t1表示取6、7列。。
括號中逗號前面表示所取的行,後面表示所取的列。
:表示取所有的,這裡即表示取1至5列的所有的行和6、7列的所有的行。
如果「:」在逗號後面即表示取所有的列。
15樓:不友邦
1、是指陣列中的1至5列
2、第一個冒號,指的是該陣列中的全部行數
3、第二個冒號,前後連線1和5,指的是1-5列
16樓:匿名使用者
a是一個三維陣列。個人理解a(:,:,1)是指取這個三維陣列的第一個元素(專業點稱為『頁』),這個元素是一個二維矩陣。
為了更好地理解高維陣列,我們假設a的每個元素都為3*4的矩陣,那麼你可以用a(1,2,:)取得每個(二維陣列)中的第1行第2列的數值。同理,a(2,:
,1)這個應該知道是什麼意思了吧,呵呵,說對了,就是取a的第一個元素(3*4的二維矩陣)裡的整個第二行。依此類推。。。。
高維陣列的形象思維比較困難,不好理解,用的時候儘量避免,不過一般用到三維四維也夠用了吧。
你可以在matlab裡面建立一個高維陣列,自己輸入諸如此類的命令,理解會更深刻!希望有所幫助!
17樓:匿名使用者
冒號指該維的全部
如矩陣a=[1 2 3 4
5 6 7 8]
那麼a(:,2),行座標為冒號,則表示所有行,2是列座標,則a(:,2)代表第二列的所有行,也就是列向量:[2 6]'
所以matlab t=(:,:,1)代表第一維、第二維的所有資料,第三維的第一個
t是個三維矩陣
1:3代表該維的第一個數到第三個數
還是之前的矩陣
a(:,1:3)
第一維是全部資料,第二維是第1個數到第三個數,也就是第一列到第三列的所有行
[1 2 3
5 6 7]
18樓:匿名使用者
把a中b為1的那些行提取出來
比如,如果b=logical([1;0;1])
那麼a(b,:)就是提取a的第1、3行。
19樓:匿名使用者
對於一個矩陣a來說,a(i:j)表示取出a中第i個到第j個元素。
矩陣表示元素有兩個方法:雙下標和單下標,前者即第幾行第幾列
後者按列序計算,第2列第1行轉化為單下標就是列元素個數+1
20樓:匿名使用者
問題一:1:h(1)表示1,2,3,4……h(1)。其中h(1)應該是個整數,就是取1到h(1)的所有整數。
問題二:這個的優先順序不是你想的那樣的。而應該是(50+1):h(1)也就是說從51到h(1)。
問題三:映象操作只有c是,不僅是左右映象,而且是上下映象。
執行下邊的**:
c(1:h(1),1:h(2),1:h(3))=j(h(1):-1:1,h(2):-1:1,1:h(3));%映象
subplot(122);imshow(uint8(c));
你可以看看效果:
21樓:匿名使用者
你少了變數吧,應該是
t=x(:,:,1) 意思是x是一個三維矩陣,t是一個二維矩陣,t的值是x的最後一維的第一個元素(這個元素是一個二維矩陣)
b(1:3,1:3,:)是指b的第一行到第三行,第一列到第三列的所有元素。
22樓:匿名使用者
在matlab中,
triu(a,-1)
表示將陣列a的第1到第3列刪除。
第一個冒號( : )表示取陣列a的所有行;
表示取陣列a的第1到第3列。
具體的含義可以參考如下例項:
a= [1, 2, 3, 4, 5;
2, 3, 4, 5, 6;
3, 4, 5, 6, 7]; % 陣列a的大小為3*5a(:, 1:3)=; % 執行完該語句後,陣列a為:
a=[4, 5;
5, 6;
6, 7]; % 此時陣列a的大小為3*2
matlab中Xi是什麼意思Matlab裡的xi表示什麼意思?
x i 是取矩陣x的所有行的第i列並共軛轉置。其中,x表示一個矩陣 x i 表示所有行的第i列的子矩陣 冒號 就是全部的意思 最後的單引號表示共軛轉置,在實數領域相當於轉置。x a,b 取子矩陣在matlab是一種常用的操作。除了前面提到的取所有行 或列 用冒號,還可以取連續取或間隔取。比如x 2 ...
matlab中B A是什麼意思,matlab中A b和b A的區別?
你看b.a 像不像b在下a在上 因此就是a除以b 點號是表明布什矩陣除法,而是對應元素相除。例如a 123 b 2 46 b.a 0.5 0.50.5 如果是a.b 222 明白麼。如果不加點,則表示矩陣除法,這樣運算的前提是方矩陣。b.a意思是b點除以a,而b.a是a除以bmatlab裡的除分為左...
matlab中Ixy,xy是什麼意思
將矩陣中第5到54行,第5到54列的元素設為1,就是將中間的一塊方陣的元素改為1啊 i 5 54,5 54 1 把i中第5行到第54行,第5列到第54列全置1 matlab中 x,y 是什麼意思 就是把x y矩陣合起來形成一個新的矩陣。將copyy的轉置矩陣賦給x 比如說 y magic 5 y 1...