matlab在矩陣中選淘元素

2025-01-04 07:55:15 字數 2975 閱讀 1577

matlab 矩陣元素為矩陣

1樓:網友

1、如樓上所說,高維矩陣是個解決方法,不過和你說的要求略有不一樣。

另外就是用元胞陣列,例如 a = cell(5,5);a = eye(4); 這樣a是5*5的元胞陣列,其中第一行第一列為4*4的單位陣,對於a的其他元素同樣可以定義為矩陣。

2、這樣的矩陣不能直接運算,裡面的元素可以。

2樓:數鹿至暮

用三維矩陣可以麼。

三維矩陣加減運算和點乘點除都沒問題。

matlab求矩陣元素的和

3樓:網友

複製下面命令到matlab就ok了。

a=[1 2 3; 4 5 6];

sum(sum(a))

結果:ans=21

4樓:

你是要求a中元素的和吧,sum(a)就好了,是系統函式。

怎樣使matlab中的矩陣元素是乙個矩陣

5樓:勞蘭娜稱昶

應該是不行的。

無論是f@(a,n,,m)

a^n)(m);還是[12

3;456](2);實質都是沒有把矩陣作為乙個變數儲存起來,所以就無從索引了。

而elemat

(a,n)a(n);和b

a^k;b(n);都相當於對乙個已儲存的變數索引,這樣才是可行的。

6樓:du瓶邪

用矩陣的冒號裁剪法就可以實現:

a=rand(100,1);

b=a(30:40);

c=a([1:29 41:100],:

7樓:創舊黃

用大括號。

c=這樣應該用{}來引用元素。

matlab 矩陣元素

8樓:網友

>> a=[1 0 0;0 -5 0;0 0 3]a =1 0 0

m=size(a)

m =3 3

for n=1:m(1)

if a(n,n)<0;

a(n,n)=0;

endend

aa =1 0 0

%這是直接執行的。

要是寫成m檔案:

function =fun()

a=[1 0 0;0 -5 0;0 0 3];

m=size(a);

for n=1:m(1)

if a(n,n)<0;

a(n,n)=0;

endend

a執行 :>fun

a =1 0 0

9樓:網友

我是如下編的:

syms a b

a=[1 0 0;0 -5 0;0 0 3];

for i=1:3

for j=1:3

if a(i,j)>=0

b(i,j)=a(i,j);

endend

endb也許有點複雜,但能得到結果!

10樓:網友

我也是初學的,也不懂,掙點分。

matlab把矩陣裡的一行元素給另乙個矩陣

11樓:網友

% 注意矩陣的size就好了,供參考:

h = [1, 2, 3, 4];

h = zeros(3, length(h));初始化h, 列數與h保持一致。

for i = 1 : 3

h(i, := h;end

12樓:網友

h=1,2,3,4];%這個寫錯了,應該是h=[1,2,3,4]

matlab中求矩陣各行(列)元素之和

13樓:網友

sum(a)是列求和。

sum(a,2)是行求和。

一般就是double型的,要是全矩陣求和,sum(sum(a))

matlab 矩陣矩陣元素替換

14樓:網友

1、首先我們開啟matlab,在命令列視窗中輸入a=[120155;2407;2300;0000]。

2、輸入a(find(a==0))=去除掉a矩陣內的0元素。

3、按回車鍵之後,可以看到已經去除了a矩陣所有的0元素,並變成了1行資料。

4、如果我們想去除矩陣的全0行的話,輸入a(all(a==0,2),:

5、按回車鍵之後,可以看到刪除了矩陣的第5行全0行。

15樓:嚇棟棟

首先編寫m函式如下:

function out = replace(w,p)temp_h=length(w);

l=1;for k=1:temp_h

if w(k)==1

out(k)=p(l);

l=l+1;

elsew(k)=0;

endend

end然後將該m函式放到matlab工作目錄下,或改變matlab工作目錄到該函式的目錄。

在命令空間輸入如下命令:

m=[0,1,1,0,1];

p=[3,5,9];

a=replace(m,p)

a =0 3 5 0 9看到了吧,a就是m矩陣中將1對應的用p的元素替換後的矩陣。

16樓:塗智華

以下面為例,其餘類推。

w=[1 0 1 1 0 0 0 1 1 1 0];

p=[5 6 2 8 9 7];

k=1;%記錄p中元素位置。

for i=1:length(w)

if w(i)==1

w(i)=p(k);

k=k+1;

endend

在Matlab中,大矩陣進行SVD時出現out of mem

你的矩陣太大了!換一種演算法吧!矩陣太大,機器配置過低 請問我用matlab做svd 奇異值分解 時,出現錯誤out of memory怎麼辦?補充 我試過了,沒問題。你自己先試下面的命令 clear all temp randn 60000,10 u,s,v svd temp,0 如果這個沒問題,...

eigen矩陣matlab怎麼用

專案要進行比較多的矩陣操作,特別是二維矩陣。剛開始做實驗時,使用了動態二維陣列,於 專是寫了一堆屬matrix函式,作矩陣的乘除加減求逆求行列式。實驗做完了,開始做 優化,發現matrix.h檔案裡適用性太低,而且動態二維陣列的空間分配與釋放也影響效率,於是尋找其他解決方案。首先考慮的是與matla...

在matlab中如何查詢某個矩陣中滿足特定數值的行

i,j find a 1 返回所尋找的元素的行標 i 和列表 j m,n find a 1 m,n分別為行數,列數 matlab陣列中如何找某個值的座標 1 首先需要知道matlab陣列找某個值的座標,是使用find函式,可以在命令列視窗中輸入help find。2 在matlab命令列視窗中輸入a...