2016-05-16 11 views
0

Wenn ich den Execute Script Operator verwende, wo es einen Eingabe-Arc gibt und dieser Eingang vom Typ ExampleSet ist und ich zum Beispiel das einzeilige Skript return operator.getInput(ExampleSet.class) starte, und schließe dann den Ausgang an ein Extract Performance Operator, der eine ExampleSet als Eingabe nimmt, erhalte ich einen Fehler: Mandatory input missing at port Performance.example set.Verbinden der Ausgabe des Skripts zum Extrahieren der Leistung

Mein Ziel ist es, ein Petrinetz auf Korrektheit über den Operator Analyse soundness zu prüfen, der mit der Erweiterung RapidProm geliefert wird, und das erste Attribut in der ersten Zeile entweder 0 oder 1 zu nehmen und zu ändern, je nachdem, ob diese Zeichenfolge übereinstimmt. " ist Ton ", so kann ich dann Extract Performance verwenden und es mit anderen Leistungen unter Verwendung Average kombinieren.

Ist dies mit Execute Script der richtige Weg, und wenn ja, wie soll ich diesen Fehler beheben?

Antwort

1

Erstens: Kümmern Sie sich nicht über den Fehler Mandatory input missing at port Performance.example set Es aufgelöst wird, wenn Sie das Modell laufen.

Zweitens: Es ist in der Tat ein bisschen hässlich, wird der Ausgang des Betreibers, die die Solidität des Modells überprüft, da es eine sehr lange Zeichenfolge, die wie Woflan Diagnose net „sieht d1cf46bd-15a9- 4801-9f02-946a8f125eaf "- Das Netz ist Ton Ende der Wofolan Diagnose

Sie können das Skript ausführen, um dies zu lösen :) Siehe das Skript unten! Die Ausgabe ist ein Beispiel, das 1 zurückgibt, wenn das Modell Sound ist, und 0 andernfalls. Außerdem verwende ich einige Log-Operatoren, um diese in eine schöne Tabelle zu übersetzen, die für Dokumentationszwecke nützlich ist.

ExampleSet input = operator.getInput(ExampleSet.class); 

    for (Example example : input) { 
    String uglyResult = example["att1"]; 
    String soundResult = "The net is sound"; 
    Boolean soundnessCheck = uglyResult.toLowerCase().contains(soundResult.toLowerCase()); 
    if (soundnessCheck){ 
     example["att1"] = "1"; //the net is sound :) 
    } else { 
     example["att1"] = "0"; //the net is not sound! 
    } 
} 
return input; 

Siehe auch das beigefügte Beispielmodell, das ich erstellt habe. RapidMiner Setup

Verwandte Themen