2012-06-27 7 views
3

Из функции, которую я запускаю в matlab, я получаю матрицу 225x400. Я хочу подсчитать частоту каждого элемента в этой матрице, что означает, что мне нужно рассчитать, сколько раз каждый элемент появляется на матрице. Меня зовут матрица «Idiff»Частота элементов в матрице - Matlab

Я использую:

B=unique(Idiff); 

найти уникальные элементы в матрице Idiff. Я получаю столбец из 1138 элементов, поэтому я понимаю, что эти элементы уникальны, и все остальные элементы в матрице Idiff повторяют эти элементы.

Теперь я пытаюсь подсчитать, сколько раз появляется каждый уникальный элемент в моей матрице Idiff с помощью:

C=histc(Idiff,B); 

Но что я получаю столбец 47761 элементов и я запутаться.

Вы можете мне помочь?

+0

Возможный дубликат [найти количество элементов в матрице из двух столбцов] (http://stackoverflow.com/questions/11139447/find-count-of-elements-in-a-matrix-of-two-columns) –

ответ

1

Использование

C=histc(Idiff(:),B); 

В противном случае histc работает на каждой колонке отдельно.

+0

Отлично, что сработало! Теперь, если я хочу создать вероятность каждого уникального элемента, означающего, что мне нужно вычислить эту вероятность каждого элемента = количество событий/общее количество событий, как я могу это сделать в Matlab? – astralreb

 Смежные вопросы

  • Нет связанных вопросов^_^