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...