嗨,我有一個單元格數組2 x 1000.第一列保存數值(雙精度)值,第二列保存一個字符串。我希望找到第一列中的所有單元格高於某個值,並將第二列中的相應單元格帶回來。我嘗試過strcamp和其他各種各樣的遊戲,但顯然它們是用於字符串的。我也試着做在單元陣列中找到前n個數值單元格
sortrows(mycell(1,:));
,所以我可以選擇第50行關閉或whateever,但這似乎並沒有下令單元陣列。但我真的想在單元陣列的第一列指定一個閾值。
我該怎麼做?
謝謝。
嗨,我有一個單元格數組2 x 1000.第一列保存數值(雙精度)值,第二列保存一個字符串。我希望找到第一列中的所有單元格高於某個值,並將第二列中的相應單元格帶回來。我嘗試過strcamp和其他各種各樣的遊戲,但顯然它們是用於字符串的。我也試着做在單元陣列中找到前n個數值單元格
sortrows(mycell(1,:));
,所以我可以選擇第50行關閉或whateever,但這似乎並沒有下令單元陣列。但我真的想在單元陣列的第一列指定一個閾值。
我該怎麼做?
謝謝。
如果C
是您的單元陣列:
nums = [C{:,1}];
{:}
轉換C
成comma separated list(因此僅{:,1}
轉換的第一列),然後[]
收集結果爲正常陣列。之後,它很簡單:
index = nums > Threshold;
C(index,:)
或在一個班輪:
C([C{:,1}] > Threshold, :) %// Or C([C{:,1}] > Threshold, 2) as Luis said
我認爲OP希望'C(index,2)' –
@丹恩謝謝 - 解釋也有幫助。 – brucezepplin
最簡單的辦法是隻單獨的列,所以有一個數字陣列和單獨的單元陣列 – Dan