So erstellen Sie ein Skript zum Ermitteln des maximalen und minimalen Datumswerts in einer Zeile für mehr als 100 SpaltenIch habe eine Tabelle mit mehr als 500 Zeilen und mehr als 100 Spalten. Wird mit numerischen Werten (Daten) gefüllt. Ich muss in jeder Zeile den Maximal- und Minimalwert für das früheste und späteste Datum ermitteln. Ich denke, das Skript würde für jede Zeile ähnlich wie „Maximum (Spalte1........Spalte100)“ sein. Ich bin mir jedoch nicht sicher, wie ich die Spaltenbereiche entlang jeder Zeile skripten soll.
Erweiterte statistische ModellierungAutomatisierung und SkripterstellungDatenmischung und -bereinigungMassenanpassungBetreff: So erstellen Sie ein Skript zum Ermitteln des maximalen und minimalen Datumswerts in einer Zeile für mehr als 100 SpaltenKönnte diese Formel
If( Row() == 1,
nc = N Cols( Current Data Table() )
);
Mean( As Column( nc - 4 ), As Column( nc - 3 ),
As Column( nc - 2 ), As Column( nc - 1 ) );
Seien Sie etwas in der Richtung, die Sie suchen
Betreff: So erstellen Sie ein Skript zum Ermitteln des maximalen und minimalen Datumswerts in einer Zeile für mehr als 100 Spaltenwenn man bedenkt, dass jede Spalte Werte von jedem Tag enthält; und ich muss den Durchschnitt der Daten der letzten 4 Tage (Durchschnitt von 4 Spalten) nehmen und ihn in eine neue Spalte einfügen. Wie erstelle ich eine Formel für diese neue Spalte? Wo ändern sich die Referenzen in der Formel jeden Tag?Betreff: So erstellen Sie ein Skript zum Ermitteln des maximalen und minimalen Datumswerts in einer Zeile für mehr als 100 SpaltenWenn Sie nur das 10. bis zum Ende der Datentabelle verwenden möchten, können Sie die Elemente in der Liste ändern, die für die Spaltenspezifikation verwendet werden.Hier ist eine Modifikation der Formel, die ich zuvor eingereicht habe
If( Row() == 1,
theList = Current Data Table() << get column names( );
remove from( theList, 1, 9 );
);
Max( theLIst );
Eine Dokumentation zur Listenänderung finden Sie im Scripting Guide.
Betreff: So erstellen Sie ein Skript zum Ermitteln des maximalen und minimalen Datumswerts in einer Zeile für mehr als 100 SpaltenHier ist eine Möglichkeit. Verwenden Sie „Hilfe > Scripting Index“ und den „JSL Scripting Guide“, um Unklarheiten zu verstehen.
NamesDefaultToHere(1);
// Make some data
nr = 100;
nc = 50;
dt = AsTable(J(nr, nc, RandomNormal(0, 1)));
dt << setName("Some Random Continuous Columns");
// Define a contiguous range of columns to consider
startColNum = RandomInteger(1, Floor(nc/2));
endColNum = RandomInteger(Ceiling(nc/2), nc);
// Get the list of columns to include in the formulas
allCols = dt << getColumnNames;
myCols = allCols[startColNum::endColNum];
// Add the required formulas
CMD = Expr(dt << NewColumn("Row Maximum from Cols "||Char(startColNum)||" to "||Char(endColNum), Numeric, Continuous, Formula(Max(colsTBD))));
SubstituteInto(CMD, Expr(colsTBD), myCols);
CMD;
CMD = Expr(dt << NewColumn("Row Minimum from Cols "||Char(startColNum)||" to "||Char(endColNum), Numeric, Continuous, Formula(Min(colsTBD))));
SubstituteInto(CMD, Expr(colsTBD), myCols);
CMD;
Betreff: So erstellen Sie ein Skript zum Ermitteln des maximalen und minimalen Datumswerts in einer Zeile für mehr als 100 SpaltenWie legt man den Bereich im Skript fest, welche genauen Symbole/Zeichen sollen im Skript verwendet werden? Das ist es, was mich interessiertBetreff: So erstellen Sie ein Skript zum Ermitteln des maximalen und minimalen Datumswerts in einer Zeile für mehr als 100 SpaltenIch denke, es wäre einfach. Erstellen Sie einfach eine neue Spalte mit der Formel Min(:Col1, :Col2,....,:Coln)
Sie können alle Spalten per Drag & Drop in den Formeleditor ziehen.Betreff: So erstellen Sie ein Skript zum Ermitteln des maximalen und minimalen Datumswerts in einer Zeile für mehr als 100 SpaltenWenn ich nur einen Bereich von Spalten und NICHT alle Spalten verwenden möchte, wie mache ich das per Skript? Nehmen wir an, ich möchte für alle Zeilen nur die 10. bis 100. Spalte verwenden. Wie schreibe ich das?Betreff: So erstellen Sie ein Skript zum Ermitteln des maximalen und minimalen Datumswerts in einer Zeile für mehr als 100 SpaltenHier ist eine einfache Formel, die alle fortlaufenden Spalten in Ihrer Datentabelle findet und dann den Maximalwert für diese Spalten berechnet.Verwenden Sie es einfach als Formel für eine neue Spalte
If( Row() == 1,
theList = Current Data Table() << get column names( continuous )
);
Max( theLIst );
Betreff: So erstellen Sie ein Skript zum Ermitteln des maximalen und minimalen Datumswerts in einer Zeile für mehr als 100 SpaltenHallo @tonkatsu2020 ,
Vielleicht möchten Sie darüber nachdenken, ob Ihre Datentabelle „ausgerichtet“ oder richtig angeordnet ist. Normalerweise möchten Sie eine einzelne Spalte mit Daten haben und dann wären die Zeilen jede neue Instanz dessen, was Sie gerade betrachten.
Sie könnten darüber nachdenken, Ihre Daten zu transponieren. Dann ist es einfach, Col Maximum() und Col Minimum() zu finden. Dies ist jedoch möglicherweise nicht das, wonach Sie suchen. Können Sie eine anonymisierte Version Ihrer Tabelle teilen? Dies kann Ihnen helfen zu verstehen, wie Ihre Daten strukturiert sind und was Sie damit machen möchten.
DS
Betreff: So erstellen Sie ein Skript zum Ermitteln des maximalen und minimalen Datumswerts in einer Zeile für mehr als 100 SpaltenHallo,
Haben Sie darüber nachgedacht, Ihre Daten zu transponieren (Zeilen werden zu Spalten und umgekehrt)? Sie könnten dann die Formeln „Col Minimum“ und „Col Maximum“ verwenden.
Am besten,
TS