Wie lassen sich Datentabellenoperationen (z. B. Stapeln, Aufteilen usw.) beschleunigen?Ich muss oft sehr große Tabellen mit Millionen von Zeilen stapeln, eine bestimmte Operation durchführen und die Tabelle anschließend wieder aufteilen.
Welche Möglichkeiten gibt es, das Ganze zu beschleunigen, außer mit „unsichtbaren“ Datentabellen im JSL-Code zu arbeiten?
Ich bin mit dem Befehl Begin/End Data Update vertraut , bin mir aber nicht sicher, ob er hier relevant ist oder ob er gegenüber unsichtbaren Tabellen irgendeine Verbesserung bietet.
Automatisierung und SkripterstellungBetreff: Wie lassen sich Datentabellenoperationen beschleunigen (z. B. Stapeln, Aufteilen, ...)?Unsichtbare (oder private) Tabellen sind ein guter Ausgangspunkt, aber dann hängt es stark von Ihren Tabellen ab; manchmal können Sie sogar Split/Stack vermeiden.
Betreff: Wie lassen sich Datentabellenoperationen beschleunigen (z. B. Stapeln, Aufteilen, ...)?Mein Ziel ist es, Spalten zusammenzuführen, die dieselbe Information enthalten. Ich habe eine Beispieltabelle beigefügt, in der die Spalten „Alter“, „Gewicht“ und „Größe“ jeweils auf zwei Spalten verteilt sind. Ich möchte jeweils zwei dieser Spalten zusammenführen.
Ursprünglich habe ich die Spalten gestapelt, den relevanten Teil (Alter/Gewicht/Größe) herausgeschnitten und sie dann wieder aufgeteilt. Bei sehr großen Datentabellen stellt dies jedoch ein Problem dar.
Betreff: Wie lassen sich Datentabellenoperationen beschleunigen (z. B. Stapeln, Aufteilen, ...)?
Haben Sie den Query Builder schon ausprobiert?
Entschuldigung, ich habe die Frage falsch verstanden. Ich glaube nicht, dass der Abfrage-Generator hier weiterhilft.
Betreff: Wie lassen sich Datentabellenoperationen beschleunigen (z. B. Stapeln, Aufteilen, ...)?Names Default To Here(1);
dt = Open("$DOWNLOADS/example_input.jmp");
valid_cols = 4;
m = dt[0,0];
r = Transform Each({vals}, m,
nonmissing = Where(!IsMissing(vals));
vals[nonmissing];
);
dt[0, 1::valid_cols] = r;
dt << Delete Columns(valid_cols::N Cols(dt));
Betreff: Wie lassen sich Datentabellenoperationen beschleunigen (z. B. Stapeln, Aufteilen, ...)?Und wenn die Daten tatsächlich so aussehen
- Wählen Sie Ihre "Duplikat"-Spalten aus.
- Erstellen Sie eine Teilmenge mit ihnen + der Spalte „ID“ (möglicherweise müssen Sie eine erstellen, falls Sie noch keine haben).
- Zeilen mit fehlenden Werten löschen
- Benennen Sie Ihre Spalten in beiden Tabellen gleich (und entfernen Sie überflüssige Spalten).
- Verwenden Sie die Update-Funktion für die Originaltabelle mit der ID-Spalte.
- Schließe die Teilmenge