Erstellen Sie neue Spalten mit einer For-Schleife und geben Sie jeder Spalte einen eigenen Namen und eine eigene FormelHallo an alle,
Ich habe eine große Datentabelle mit Werten und Spaltenüberschriften test1,test2,test3,test4,...,test800. Einige dieser Werte sind negativ, und ich möchte alle Spalten, die ich in der Liste "Datalist_log_2" definiere, nehmen und eine neue Spalte namens "test1_pos" mit den absoluten Werten erstellen. (Für jeden Test).
Datalist_log_2 = {test1, test2, test5, test319};
wmax = N Items( Datalist_log_2 );
For ( w = 1, w <=wmax, w++,
Temp12 = Char(Datalist_log_2[w]);
NewColName = Temp12||"_pos"; //not sure if I need to do this extra round, but it works. Will figure that out myself.
NewColumn(NewColName, Numeric, Continuous, Formula(Abs(Datalist_log_2[w])))
);
Das Problem scheint zu sein, dass Formula() versucht, den absoluten Wert der Variablen "test1" in der ersten Iteration zu bilden, aber ich möchte natürlich nicht sqrt(test1*test1). Stattdessen möchte ich, dass die neu erstellte Spalte die absoluten Werte der Referenzspalte mit dem Namen "test1" erhält.
vielen Dank für deine Hilfe
Betreff: Neue Spalten mit einer For-Schleife erstellen und jeder Spalte einen eigenen Namen und eine eigene Formel gebenDas funktioniert super, danke
Betreff: Neue Spalten mit einer For-Schleife erstellen und jeder Spalte einen eigenen Namen und eine eigene Formel gebenNachfolgend finden Sie eine Änderung Ihres aktuellen Codes, wobei dieselbe Methodik verwendet wird, die ich Ihnen in Ihrem vorherigen Beitrag übermittelt habe. Kombination von For-Schleife und Dispatch()-Befehl in einem Variabilitätsdiagramm" .Wenn Sie nicht in der Lage sind, zu interpretieren, was vor sich geht, schlage ich vor, dass Sie einen Blick in den Skriptleitfaden werfen, um eine Erklärung zu erhalten.
Hilfe==>Bücher==>Scripting Guide
Datalist_log_2 = {test1, test2, test3};
For( w = 1, w <= N Items( Datalist_log_2 ), w++,
Eval(
Substitute(
Expr(
New Column( Char( Datalist_log_2[w] ) || "_pos",
Numeric,
Continuous,
Formula( Abs( __Col__ ) )
)
),
Expr( __col__ ), Parse( ":" || Char( Datalist_log_2[w] ) )
)
)
);Betreff: Neue Spalten mit einer For-Schleife erstellen und jeder Spalte einen eigenen Namen und eine eigene Formel gebenWie aktuell, schau dir das an JSL-Kochbuchartikel die etwas sehr ähnliches tut.Geben Sie einfach Ihre eigene Liste der zu ändernden Spalten an und ändern Sie dann den neuen Spaltennamen und die neue Formel.
Ich schlage vor, die Spalten auszuwählen und die Nachricht Current Data Table() << Get Selected Columns zu verwenden, um die Liste in das Protokoll zu schreiben, das Sie dann kopieren und in Ihren Code einfügen können.