Skript zum Überspringen des Änderns einer Spalte, wenn die Spalte nicht vorhanden istHallo zusammen,
Gibt es eine Möglichkeit, ein Skript automatisch zu ignorieren, wenn die Zielspalte nicht vorhanden ist? Ich habe zum Beispiel das unten gezeigte Skript und manchmal ist kein „Numerisches C“ verfügbar (es handelt sich um eine Automatisierung, die 3 Variablen haben kann oder auch nicht). Das Skript bleibt bei diesem Stück derzeit stehen, wenn kein „Numerisches C“ gefunden werden kann; Idealerweise möchte ich ein Skript mit mehreren „Numerischen #“ erstellen, das diesen Teil des Skripts automatisch ignoriert, wenn er nicht vorhanden ist:
Datentabelle ( „Teilmenge vom 5. Januar“ ) ;
Spalte ( "Spalte" ) << Datentyp ( Numerisch ) ;
Spalte ( "Spalte" ) << Modellierungstyp ( Kontinuierlich ) ;
Spalte ( "Daten" ) << Datentyp ( Numerisch ) ;
Spalte ( "Daten" ) << Modellierungstyp ( Kontinuierlich ) ;
Spalte ( „Numerisches A“ ) << Datentyp ( Numerisch ) ;
Spalte ( „Numerisches A“ ) << Modellierungstyp ( Kontinuierlich ) ;
Spalte ( „Numerisches B“ ) << Datentyp ( Numerisch ) ;
Spalte ( „Numerisches B“ ) << Modellierungstyp ( Kontinuierlich ) ;
Spalte ( „Numerisches C“ ) << Datentyp ( Numerisch ) ;
Spalte ( „Numerisches C“ ) << Modellierungstyp ( Kontinuierlich ) ;
Danke,
Joe
Betreff: Skript erstellen, um das Ändern einer Spalte zu überspringen, wenn die Spalte nicht vorhanden istHier ist ein Skript, das das, was Sie gesagt haben und das Sie versucht haben, aufnimmt und es so korrigiert, dass es funktionieren sollte.Ich habe das Skript auch mit Anmerkungen versehen, um zu verstehen, was jede Anweisung bewirkt
// Set a variable "dt" to point to the data table you want to work on
// In the example you showed, it was a table called "Jan 5 Subset"
dt = Data Table("Jan 5 Subset");
// Now request to get from the data table, now referenced by the
// variable "dt" and return the list as strings
// Using the Contains function, we will check to see if a column
// named "Numerical A" is found in the returned list of column
// names. If it is, the comparison will be true and the statements
// following the "," will be executed
IF( Contains(dt << Get column names(string), "Numerical A"),
// Set the Data Type and Modeling Type for the column "Numerical A"
Column("Numerical A") <<DATA type=""></DATA>Betreff: Skript erstellen, um das Ändern einer Spalte zu überspringen, wenn die Spalte nicht vorhanden istDas zweite Skript funktioniert perfekt, vielen Dank!Betreff: Skript erstellen, um das Ändern einer Spalte zu überspringen, wenn die Spalte nicht vorhanden istHallo Jim,
Danke für die schnelle Antwort. Ich habe die Top-Funktion ausprobiert:
dt = Datentabelle ( „Teilmenge vom 5. Januar“ );
Wenn ( Enthält ( dt < < erhalten Spalte Namen( string ), "Spalte" ),
Spalte ( "Spalte" ) < < Daten Typ (Numerisch) < < Modellieren Typ (Kontinuierlich)
);
Allerdings bin ich mir nicht sicher, was ich an die Stelle „(string)“ im Skript einfügen soll?
Im Augenblick Das Skript scheint in dieser Zeile mit „Send Expects Scriptable Object“ fehlzuschlagen. Mein aktuelles Skript dafür wäre:
WENN ( Enthält ( dt << Spaltennamen abrufen ( Zeichenfolge ) , „Numerisches A“ ) ,
„Numerisches A“ ) << Datentyp ( Numerisch ) << Modellierungstyp ( Kontinuierlich ) ;
Entschuldigung, wenn mir hier etwas wirklich Offensichtliches entgangen ist, vielen Dank im Voraus.
Betreff: Skript erstellen, um das Ändern einer Spalte zu überspringen, wenn die Spalte nicht vorhanden istEs gibt mehrere Möglichkeiten, wie ich das mache......
Die erste besteht darin, die Anweisungen, die qualifiziert werden müssen, in einer IF-Funktion zu platzieren.Die formalste Vorgehensweise wäre, die Spaltennamen aus der Datentabelle abzurufen und die IF-Bedingung dann darauf zu basieren, ob die Spalte gefunden wurde
dt = Data Table( "Jan 5 Subset" );
If( Contains( dt << get column names( string ), "Column" ),
Column( "Column" ) << Data Type( Numeric ) << Modeling Type( Continuous )
);
Die zweite Methode besteht darin, JMP mithilfe einer Try-Funktion alle gefundenen Fehler ignorieren zu lassen
Try( Column( "Column" ) << Data Type( Numeric ) << Modeling Type( Continuous ) );
Die Anweisung schlägt möglicherweise fehl, aber JMP setzt die Ausführung fort