Kopieren Sie 100+ Spaltenüberschriften mit Formeln aus einer JMP-Datei für JSL-ScriptingHallo,
Für die Volumendatenanalyse importierte ich Excel- oder CSV-Dateien mit großen Rohdaten in JMP. Anschließend kopierte und kopierte ich mehr als 100 Spaltenüberschriften mit Formeln aus einer meiner vorherigen Dateien manuell in jede JMP-Datei. Ich fand diese Methode sehr zeitaufwändig und ich möchte zu JSL-Scripring wechseln.
Gibt es eine einfache Möglichkeit, diese 100+ Spaltenüberschriften mit ihren Formeln aus einer meiner Dateien in einer einzigen Datei (z. B. Excel, TXT oder Config) zu speichern und anschließend für jede Datenanalyse einfach ein JSL-Skript zu erstellen neue Spalten mit Formularen automatisch?
Re: Kopieren Sie 100+ Spaltenüberschriften mit Formeln aus einer JMP-Datei für JSL-ScriptingIch denke, dieser Ansatz würde in JMP 12 funktionieren.
JSL-Beispiel zum Übertragen aller Formelspalten aus einer alten / Vorlagentabelle in eine neue Tabelle ohne die Formelspalten:
Names Default To Here(1);
// Old table with all desired formula columns
dt = Open("$SAMPLE_DATA/Diabetes.jmp");
// New table without the formula columns
dt_new = dt << subset(Columns({1, 4 :: N Col(dt)}));
//Get scripts for all formulas columns in old table
formula_columns = {};
For(i = 1, i <= N Col(dt), i++,
If(!Is Empty(Column(dt, i) << get property(Formula)),
Insert Into(formula_columns, Column(dt, i))
)
);
//Add formula columns to new table
Current Data Table(dt_new);
Eval List(formula_columns << get script);Re: Kopieren Sie 100+ Spaltenüberschriften mit Formeln aus einer JMP-Datei für JSL-ScriptingHallo @ Xenon2090 .
Ich habe ein Add-In geschrieben, das in dieser Situation für Sie nützlich sein könnte. Skript für ausgewählte Spalten kopieren . Nach der Installation können Sie Ihre Formelspalten auswählen, das Add-In im Menü Add-Ins ausführen und das Skript haben, um diese Spalten als jsl in der Zwischenablage neu zu erstellen. Fügen Sie das Skript in ein neues Fenster ein und führen Sie es immer aus, wenn Sie diese Spalten der aktuellen Tabelle hinzufügen möchten.
julianisch
Re: Kopieren Sie 100+ Spaltenüberschriften mit Formeln aus einer JMP-Datei für JSL-ScriptingObwohl es kein Skript ist, möchten Sie vielleicht diesen Ansatz verwenden, da er tatsächlich nur zwei bis vier Schritte umfasst, je nachdem, wie Sie zählen. 
Annahme: Sie haben eine JMP-Tabelle mit diesen mehr als 100 Spalten und Formeln, aber ohne Daten (Referenztabelle).
1 Importieren Sie Ihre Daten wie gewohnt und öffnen Sie die Referenztabelle
2 Kopieren der Spaltennamen
a) Markieren Sie in der Spaltenübersicht links alle Spalten, kopieren Sie (Strg + c).
b) In der neuen Tabelle markieren Sie alle Spalten in der Spaltenübersicht. Fügen Sie (Strg + V) ein.
3. Formeln kopieren
a) Markieren Sie alle Spalten in der Referenztabelle, klicken Sie mit der rechten Maustaste in den ausgewählten Bereich der Tabelle und wählen Sie "Mehrere Spalteneigenschaften kopieren" aus.
b) Markieren Sie alle Spalten in der neuen Tabelle, klicken Sie mit der rechten Maustaste in den ausgewählten Bereich der Tabelle und wählen Sie "Eigenschaften für mehrere Spalten einfügen".
Das sollte tun, was Sie brauchen.
Hinweis: In JMP 12 gibt es kein Skript zum Kopieren mehrerer Spalteneigenschaften. In späteren Versionen (mindestens JMP 14 gibt es):
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Tiretread.jmp" );
dt << Select Columns( :MODULUS, :ELONG );
dt << Copy Multi Columns Properties;
Re: Kopieren Sie 100+ Spaltenüberschriften mit Formeln aus einer JMP-Datei für JSL-ScriptingNur das Formula Depot-Skript erfordert JMP 14. Das zweite Skript funktioniert für JMP 12. Öffnen Sie einfach die Datentabelle "Big Class" und führen Sie das Skript aus. Sie werden sehen, dass die Spalten übernommen werden.
Re: Kopieren Sie 100+ Spaltenüberschriften mit Formeln aus einer JMP-Datei für JSL-ScriptingIch habe JMP 12. Gibt es eine Lösung?
Re: Kopieren Sie 100+ Spaltenüberschriften mit Formeln aus einer JMP-Datei für JSL-ScriptingJMP 14 verfügt über ein Formula Depot, in dem Sie Ihre Formeln speichern und dann auf jede Datentabelle anwenden können, auf die Sie sie anwenden möchten.
Sie können auch die Skripts für alle Ihre Formelspalten einfach erfassen und in einem Skript speichern. Bei zukünftigen Datentabellen können Sie das Skript einfach ausführen und die neuen Spalten werden generiert.
Hier ist ein einfaches Skript, das ein neues Formula Depot generiert ... vorausgesetzt, Sie haben JMP 14
Formula Depot(
Predictor(
Table( "Untitled 179" ),
Creator( "Column Ratio" ),
Command( "Column<<GET script=""></GET>
Und hier ist eine alternative Methode, die ein einfaches Skript verwendet, das bei der Ausführung 2 neue Spalten generiert und deren Formeln anwendet
Names Default To Here( 1 );
dt = Current Data Table();
dt << New Column( "Ratio",
Numeric,
"Continuous",
Format( "Best", 12 ),
Formula( :height / :weight ),
Set Selected
);
dt << New Column( "Reverse Ratio",
Numeric,
"Continuous",
Format( "Best", 12 ),
Formula( :weight / :height ),
Set Selected
);
Wenn Sie die JMP-Datentabelle "Big Class" öffnen, können Sie die neuen Spalten sowohl aus dem Formula Depot als auch aus dem einfachen Skript anwenden