1樓:匿名使用者
% 使用 reshape(x ,m,n)函式
% 先了解一下reshape的基本用法
% 簡而言之就是將矩陣x—>m*n的新矩陣
% 例如:將 3*4的a矩陣—>2*6的b矩陣
a =[1 4 7 10
2 5 8 11
3 6 9 12];
b = reshape(a,2,6);
% 等價於 b = reshape(a(:),2,6)
% 等價於 b = reshape(a(:),2,)
% 上面執行結果為
b =[ 1 3 5 7 9 11
2 4 6 8 10 12];
% 分析:
% 因為 matlab會將a轉換成a(:)
% 按列輸出 a(:)=[1,2,3,4,5,6,7,8,9,10,11,12];
% 對b,注意b是2行6列,同樣matlab會按列輸入
% b =[ 1 3 . . . 11
% 2 . . . 10 12];
% 你說的意思,是不是矩陣a的每一列,按列元素拍在一行?
% 第一種方法:
c = reshape(a,1,);
% 第二種方法:
c=a(:)';
由於沒能完全理解題主的意思,題主可以根據我說的,按照reshape函式來解決問題
2樓:匿名使用者
為什麼要這樣表示呢?matlab可以幫助你隨時提取你想要的那一列比如x=[1,2,3;4,5,6;7,8,9];
那麼y1=x(1,:);
y2=x(2,:);
y3=x(3,:);
如果你要用到每一行,不妨這樣:
for i=1:size(x,1)
y=x(i,:);
%這裡你隨便添語句end
3樓:名山之鷹
一,整體介紹,已知一個m行n列的矩陣,記為a,我們要將它每一行表示為一個向量
二,所需工具,matlab
三,步驟:
1,獲取矩陣維度:[m,n]=size(a);
2,矩陣a的第i個行向量表示為:a(i,:)。其中,i 是大於等於1,並且小於等於m的整數
4樓:真
你就不把他看作一個矩陣而是看成m個列向量不就得了。這點理解力都沒有嗎?
5樓:匿名使用者
這個我建議直接讀取它的行,比如我要讀取a[1,2,3;4,5,6;7,8,9]的第二行,matlab命令為a(2,:)。要讀去第一行,matlab命令為a(1,:)。
如果你要讀取第一列的話,matlab命令為a(:,1)
6樓:徐志超
其實沒必要這樣,你要哪行,可以直接輸入語句提取,比如要第2行,假設k是m行n列:
a=k(2,:)
7樓:匿名使用者
用mat2cell命令可以實現講一個矩陣根據引數分塊的功能
8樓:**神探
如果矩陣a是m 行 n列,而你想將其轉置為n行m列,則使用reshape函式:
b = reshape(a, n, m)
這樣就把a轉成n行,m列的矩陣b了
9樓:羈念
cel={};a=你的矩陣;
for i=1:n
cel=a(:,i);
enda中每一列都放入了cel胞元中的一個位置
matlab中怎麼將一個m*n矩陣變成一個m*n維一列的?
10樓:匿名使用者
使用reshape(x ,m,n)函式
reshape把指復定的矩制陣改變形狀,但是元素個數bai不變,例如,du行向zhi
量:a = [1 2 3 4 5 6]
執行下面語dao句把它變成3行2列:
b = reshape(a,3,2)
執行結果:
b =1 4
2 53 6若a=[1 2 3
4 5 6
7 8 9]
使用reshpe後想得到b=[1 2 3 4 5 6 7 8 9]只需要將a轉置一下就可以了:
b=reshape(a',1,9)
matlab裡如何實現n行一列的矩陣變換成一行n列的矩陣
11樓:匿名使用者
有兩種方
bai法可以實現:
轉置矩陣:du
zhi b = a';
通用方法:reshape()函式
dao示例如回下:
說明:reshape(a,m,n) 表示將矩陣a變換為m行答n列的矩陣,通常用於矩陣形狀的改變,例如下面**將原來的1行4列矩陣轉換為2行2列矩陣:
12樓:用著追她
1、準備一個需要用於作多維多變數折線圖的“多維多變數樣本資料.xlsx”excel**。
2、然後使用版xlsread讀取所建立權的多維多變數樣本資料**,將將**資料和變數名稱都分別儲存到matlab數值矩陣和細胞矩陣中。
3、然後使用size函式計算多維多變數樣本資料的大小。
4、接下來作多維多變數圖,使用plot函式,每次取一組資料畫出折線圖然後保持,多次迴圈依次把所有折線畫出即可。
5、接下來修改橫座標為多維多變數陣列的變數名稱。
6、繼續為折線圖新增橫座標和縱座標標籤以及標題和顯示網格。
13樓:匿名使用者
正確來說轉置是.'
b=a.';就能把數列轉過來
而單單一個'是共軛轉置
b=a';轉置數列的同時,虛部去相反數
不過對於實數數列來說,轉置和共軛轉置等價
14樓:匿名使用者
使用轉置函式即可,用法如下:
a=[1 2 3 4 5];
b=a'
注意引號是英文輸入狀態下的單引號,代表轉置運算.
15樓:知道
轉置符 就是英文裡的 單引號 b=a';
matlab 如何生成一個一行n列的行矩陣,矩陣中包含數字1:m
16樓:匿名使用者
這有點麻煩。
主程式clc;clear all
c=generate(3,10);
函式程式
function k=generate(m,n)k=zeros(n,1);
for i=1:n
k(i)=randi([1,m],1);
endk=sort(k);
end示例
c =111
1233
333>>
17樓:傲慢的
x=ceil(rand(1,6)*3); %先生成隨機數向量,ceil是向上取整
sort(x);%再排序
matlab 如何生成一個m行n列的隨機矩陣,每一行元素值相同,其值為1、2、3、4?
18樓:匿名使用者
x=round(rand(1,8)*3+1);
u=repmat(x,3,1);
用氣泡排序法將n行m列的二維陣列的每一行按從大到小的順序排序 要求二維陣列的輸入排序和輸出分別用一
陳一根 include define n 30 define m 30 void main int a n m int n,m,x,i,j,t printf n輸入行數n scanf d n printf n輸入列數m scanf d m for i 0 iprintf n第 d行 n i 1 pr...
matlab將矩陣按列的逆序排列為什麼是這樣
是對的,a n 1 1 中第一個 表示的是所有的行,n 1 1表示的是從n列取到第一列,按 1的步長。相當於進行的一個for迴圈 for i n 1 i直到i 1為止 matlab 將矩陣按列的逆序排列為什麼是這樣? 是對的,a n 1 1 中第一個 表示的是所有的行,n 1 1表示的是從n列取到第...
matlab中m檔案怎麼呼叫另m檔案的函式
越亭晚僑汝 將兩個m檔案放在同一目錄,在第一個m檔案裡面直接輸入第二個m檔案的檔名即可 字尾名不要 採用 run函式。這樣的話,就可以將另一個m檔案中的資料匯入到動態儲存中,這樣就可以呼叫變數的值了 matlab中一個m檔案怎麼呼叫另一個m檔案的函式 墨汁諾 按程式,後面的資料將覆蓋前面的資料,可按...