Как получить все столбцы меньше порога? - PullRequest
0 голосов
/ 26 октября 2010

У меня есть вектор-строка с произвольными значениями.Меня интересует

  • идентификаторы столбцов столбцов, которые содержат значение <= указанный порог </li>
  • количество столбцов, которые лежат ниже порога.

Есть ли более элегантный способ вычислить это в MATLAB, чем использование for -loop?

Ответы [ 2 ]

2 голосов
/ 26 октября 2010
>> thresh = 9;
>> x = randi(20, [1 10])
x =
    17    19     3    19    13     2     6    11    20    20
>> xBelowInd = find(x <= thresh)
xBelowInd =
     3     6     7
>> num = length(xBelowInd)
num =
     3
>> x(xBelowInd)
ans =
     3     2     6
1 голос
/ 26 октября 2010

Я вполне уверен, что это дубликат, но мой поисковый фу сегодня слаб.

В любом случае, вы можете использовать find для этого

columnId = find(array<threshold)
numberOfColumnsBelowThreshold = length(columnId)
...