簡體   English   中英

Matlab:在數組中查找多個元素

[英]Matlab: find multiple elements in an array

我想在Matlab代碼的數組中找到一個值的多個元素。 我找到了功能mod並且找到了,但是它們返回元素的索引,而不是元素的索引。 此外,我編寫了以下代碼:

x=[1 2 3 4];
if (mod(x,2)==0)
a=x;
end

但這不起作用。 我怎么解決這個問題?

看起來像您找到2(或任意數字)的所有倍數的方法,可以使用以下方法實現此目的:

a = x( mod(x,2) == 0 ) ;

當您執行a = x ,無論(mod(x,2)==0)是true還是false, x仍然是x=[1 2 3 4] 您可以為(mod(x,2)==0)分配一個值,例如val = (mod(x,2)==0) ,然后將此值追加/添加到新數組中。

給定一個向量numberList = [ 1, 2, 3, 4, 5, 6]; 一個number = 2; 你可以找到索引在數字的(在載體中的位置) numberList了在使用的倍數indices = find(mod(numberList, number) ==0);

如有必要,您可以顯示此倍數調用的列表: multiples = numberList(indices)

multiples =

     2     4     6

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM