2016-07-25 17 views
0

Ich muss über alle (String-) Klassen eines Datasets sowie den Klassenwert jeder Instanz iterieren.Wert der Zeichenfolge abrufen Klassenattribut

Während Attribute.enumerateValues() gibt - wie gewünscht - die Sammlung des „rohen“ -Werte, kann ich nicht die Rohwerteregister der Klasse von einer einzigen Instanz erhalten, wie Instance.classValue()

Returns: der entsprechende Wert als Double (Wenn das entsprechende Attribut nominal (oder eine Zeichenfolge) ist, gibt es den Index des Werts als Double zurück).

Wie kann ich den String-Wert des Klassenattributs einer bestimmten Instanz erhalten?

EDIT Eine Lösung könnte sein, eine Lookup-Tabelle zu erstellen, so dass Sie "Klasse-Wert-String < -> entsprechenden Index" haben .. Aber ich weiß nicht, in welcher Reihenfolge die Indizes generiert werden Ich kenne die Reihenfolge nicht, in der Weka den Index generiert. Das könnte einen Bug riskieren. Eine verknüpfte Frage könnte sein, wie WEKA String-Attribute behandelt. Wie viele Klassifizierer kann hanndle Strings nicht an einem bestimmten Punkt die Streicher scheinen umgewandelt in verschiedene verdoppelt zu werden .. Aber sie sind nicht nominal-Klasse ..

Antwort

0

Es war leicht (Schande über mich) ..

Instance.stringValue(Attribute) 

Gibt den benötigten Wert ..

noch verwirrend und ich habe nicht erwartet, dass, wie der Wert zurück von Instances.classValue() ein double ist ..

+0

Nun, es war einfach. Freut mich, dass du es gefunden hast. 'Instance.classValue()' gibt String jedoch für mich zurück. – xro7

Verwandte Themen