2
我有一個矩陣A
和一個向量b
。我不知道它們的大小,因爲它是另一個函數的輸出,所以大小會有所不同。我想要做的是過濾A
的列(假設j th列),其中至少有一個值在b
。Matlab - 具有特定值的濾波器矩陣
如何在不測量b的大小並連接每個過濾結果的情況下執行此操作。眼下,代碼是這樣的(假設Ĵ是一個給定值)
bsize=size(b,1);
for i=1:bsize
if i==1
a=A(A(:,j)==b(i),:);
else
a=[a; A(A(:,j)==b(i),:)];
end
end
我想編寫一個更快的解決方案。
我正在添加一個數值例子來說明問題。比方說,
A=[2 4
7 14
11 13
15 14]
和b=[4 14]
我試圖做的是過濾器,以獲得A
矩陣,它的值是4和14在第二列中,b
元素,得到如下輸出。
A=[2 4
7 14
15 14]
在我的數據A
有超過12000行和b
有超過100個元素。它並不總是必須是第二列,有時列索引會改變,但現在不是問題。
我有困難的時候,瞭解你的目標是什麼。你能向我們展示一個數字例子和預期產出嗎? – rayryeng
@rayreng謝謝。我添加了一個小例子 –