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中矩陣寫入的問題,matlab中矩陣寫入txt文件的問題

521煙雨曉曉 先新建一個命名tt.txt的文件,在建一個m檔案,把這些copy進去就ok了。a 1 2 3 4 5 b 6 7 8 9 0 fid fopen tt.txt wt i size a j size b m max i 2 j 2 for k 1 m if k i 2 fprintf ...

如何把matlab中兩個陣列的不同元素挑出來

用find函式。假設第一個陣列是x,第二個陣列是y。有 如下 i find x y 該命令返回所有對應x元素不等於y元素的下標。x i y i 顯示所有不同元素 測試結果 擴充套件 如果x,y是同型號矩陣也可以。這是候傳回的引數可以是1個 矩陣線性化以後的下標 或者2個 行下標 列下標 或者3個 前...

matlab中如何提取矩陣除了某行外的其他元素

印卓秦采綠 既可以用陣列名跟圓括號,行號,列號表示,又可以用一個參數列示。注意一個參數列示時,matlab是列優先的,千萬別弄錯。例如 a 1,2,3 4,5,6 7,8,9 則a 2,1 4。千萬別寫成a 2,1 如果用一維表示是 a 2 4,千萬別寫成a 4 不信你可以上機試試。 如果不想影響a...