matlab如何把矩陣中不同的元素組成新陣列

時間 2021-07-01 01:35:33

1樓:匿名使用者

b為資料來源矩陣,假設為一維

a=ka=1

for kb=1:length(b)

if(kb滿足某條件或者b(kb)元素滿足某條件)a(ka)=b(kb);

ka=ka+1;

endend

***************===

以上**中b也可以為2維的,完全一樣的**。但結果a是一維的,刷選出來的有if條件決定

上述**效率可能不佳(人或b如果不是幾個億大小的矩陣是察覺不出來的)影響其效率是每次都要自動擴充套件a矩陣

改進方法是a=size(1,length(b));代替a=;

在最後讓a(ka:end)=;去掉沒用的尾巴,這樣在處理大資料時效率會提高,阿門。。。

******************************===

2樓:匿名使用者

>> a=[1 2 2 5 6 8 5 9]a =1 2 2 5 6 8 5 9

>> unique(a)

ans =

1 2 5 6 8 9

3樓:

你要指定規則啊!你說說你想實現什麼吧?

matlab中怎麼將一個矩陣作為另一個矩陣的元素放進去

4樓:4終

1、首先開啟電腦上的「matlab」軟體,主介面如下圖所示,可以看到命令列視窗。

2、接著在命令列輸入一個矩陣a,矩陣a的值可以自定義,此處以1-9數字為例構造矩陣a,矩陣a如下圖所示。

3、拼接矩陣需要至少兩個矩陣,在命令列輸入一個矩陣b,此處以10-18數字為例構造矩陣b。

4、下面使用命令c=[a b]來拼接矩陣a和矩陣b,此類拼接為橫向拼接,左邊為矩陣a,右邊為矩陣b。

5、命令c=[a,b]也可以用於矩陣的橫向拼接,與上一個命令的效果相同,執行結果如下圖所示。

6、接下來使用命令c=[a;b]來拼接矩陣a和矩陣b,此類拼接為縱向拼接,上邊為矩陣a,下邊為矩陣b。

5樓:

最簡單的方法是用cell。給你個例子。

%c是3x3矩陣

c=randn(3, 3);

%d是2x2的cell矩陣

d=cell(2,2);

%把c放到d(1,1)裡

d=c;

注意上面對cell矩陣操作時使用了而非( )。

6樓:劉賀

用cell就可以的

clear all;clc;

a=[1 2;3 4];

b=ones(2,2);

a=a;

a=b;

matlab 如何將一個完整的矩陣賦值到另一個矩陣的一個元素?

7樓:二三社會事

方法步驟如下:

1、首先開啟計算機,在計算機內開啟matlab,並在matlab介面內雙擊工作區的需要更改的矩陣。

2、然後在彈出的**中選中需要更改的單個矩陣元素,進行更改即可。

3、也可以通過語句來實現對矩陣單個元素的賦值操作。可以通過下面的語句:a(1,2)=100,就可以看到我們矩陣的該位置元素數值已經更改了。

8樓:笑臉藍雨

1、通過語句來實現對矩陣單個元素的賦值操作,輸入語句a(1,2)=100,如圖所示,就可以看到矩陣的該位置元素數值已經更改了。

2、然後接下來就是輸入a(5,6)=100,檢視一下數字的排列。

3、最後,可以看到矩陣會自動擴充套件成5行6列的一個新的矩陣,其餘為賦值的區域會自動為0,這樣就是解決問題了。

9樓:匿名使用者

如你所問,a是個矩陣,b就是個結構矩陣,結構矩陣的元素用{}來表示和賦值就可以了。

例如a=[1,2;3,4]

>> a =

1 2

3 4

>> b=a

b =[2x2 double]

10樓:du瓶邪

clear all

clcclose all

n=5;%矩陣的行數

a=rand(n,3);

b=rand(n,3);

c=;%a、b重新組成矩陣c

for i=1:n

c=[c;a(i,:);b(i,:)];end

11樓:滬漂族的日常

如樓上所說,讀取a中元素就要b了。如果b=a的話,就要用b讀取了!

matlab中怎麼用一個陣列中的元素去替換另一個陣列中的元素啊?

12樓:走進數理化

例如陣列是a=[1,2,3,4,5,6,7]語句a(3)=6;將修改第三個元素為6矩陣也有類似的操作。

matlab如何使矩陣中大於某值的元素置零1、思路:

使用布林陣列引用矩陣中所有大於某值的元素,然後將其賦值為0。

2、**:

a(a>10) = 0; % 將矩陣a中大於10的元素設定為0。

13樓:匿名使用者

問題太籠統了,矩陣是不是一樣大小,是交換還是單純賦值,都沒說清楚

14樓:匿名使用者

比如陣列a,b,直接用a=b;就替換了

急!在matlab中怎樣求一個矩陣中不同元素個數?謝

15樓:匿名使用者

用自帶得unique函式

>> unique([1 2 3 5 2 3 5 3 2])ans =

1 2 3 5

16樓:匿名使用者

我也不知道有沒有這個函式就是了。

自己寫了一個

length(a)-length(find(diff(sort(a))==0))

不知道對不對,希望大家討論討論

17樓:莘夜貴驪娜

舉例:>>a=

randi(

10,3,3)

a=28

11094

193>>b=

unique(a)

b=12

3489

10>>n=

length(b)n=7

matlab如何把兩個矩陣中相同值的元素設為

有沒有現成的函式不知道,但是實現起來應該不難。我採用跟c類似的方法經過兩次迴圈實現的。如下 ra,ca size a rb,cb size b for i 1 ra ca for j 1 rb cb if a i b j a i 0 endend enda,b可以為任意形式的矩陣。這樣也可以,依次找...

如何在matlab中輸入有規律的大矩陣

clear clcn 4 n 4 n n x n 矩陣 l 2 2 ones 1,n l10 repmat 1 1 1 0 1,n l10 end l1 ones 1,n 4 結果 l diag l1,4 diag l10,1 diag l 2 l l l clear,close all a zer...

在matlab中,如何在已知矩陣中取隨機兩個數並交換??微急,求大神拯救

思路就比較簡單 隨機產生兩個數,取值範圍為 1,矩陣的列數 m,n隨機產生兩個數,取值範圍為 1,矩陣的行數 q,p剩下的就是利用下標交換咯。t x m,q x n,p x m,q x m,q t完成 酷呆愛死呆 a rand 3,3 a 0.7784 0.7750 0.14820.3654 0.5...