2016-11-22 1 views
1

Ich versuche, einen Vektor in Matlab zu überprüfen. Als Beispiel hat ein Vektor 3 verschiedene Möglichkeiten 0 1 und 2. Nun möchte ich überprüfen, wie viele von 0s 1s und 2s innerhalb dieses Vektors innerhalb von Matlab sind, so dass ich die beste Split-Auswahl für meinen Entscheidungsbaum bestimmen kann. Vielleicht gibt es einen einfacheren Weg?Überprüfung der Vielfalt eines Vektors in Matlab

freundlichen Grüßen

Antwort

1

Mit vector == some_num, kehren Sie ein binäres Array von Orten von some_num in Vektor. Mit vector(binary_array) geben Sie eine Teilmenge des Arrays zurück, angezeigt durch '1' in binary_array.

Putting, dass zusammen:

vec = [ 0 0 1 1 1 2 2 2 2 2]; 
num_0 = length(vec(vec==0)); % = 2 
num_1 = length(vec(vec==1)); % = 3 

... 
+0

Vielen Dank, ich war ein bisschen verloren, aber das ist, was ich gesucht habe! – spr1te

1

Obwohl ich Brendan Antwort mag, ziehe ich den folgenden Code ein.

array = [1 2 1 0 3 1 1 4]; 
num_1 = numel(find(array==1)); 

find gibt Ihnen die Indizes der Werte. Sie können auch ~=, < und > verwenden.

Ich schlage vor, Sie passen dies an eine Funktion an.

Verwandte Themen