Ich habe einen Code, der die Namen in einer Spalte verwendet, um die Anzahl der Zeilen in einer anderen Datentabelle zu überprüfen, die über oder unter einem Schwellenwert für "Ausreißer" (für den wir nur einen festen Wert verwenden möchten) für diese Spalte liegen.
Code ist unten. Dies wird normalerweise für 30 bis 50 Spalten durchgeführt (dh, für jede Zeile werden 30 bis 50 Iterationen durchgeführt). Derzeit dauert es 26 Sekunden, auf einer Datenbasis (die, auf der Ausreißer gezählt werden), die nur eine kleine Anzahl (200) von Zeilen enthält. also scheint etwas zu langsam.
Ich habe versucht, mit tabulate zu arbeiten, und dachte darüber nach, zusammenzufassen - aber ich muss über einer einfachen Schwelle zählen. irgendwelche Vorschläge, wie man das schneller macht? Ich muss in der Lage sein, eine beliebige Anzahl von Spalten auszufüllen, wie im Code unten unter "rankdt: Analysis Columns" gespeichert.
Ich habe versucht, "get rows where" in "select where" zu ändern und dann die ausgewählten Zeilen zu zählen - aber das hat die Geschwindigkeit nicht verändert.
Vielen Dank,
Jetpeach
for each row( // for each row in rankdt - 30 to 50 rows
col_to_count = char(rankdt:Analysis Columns);
rowsAbove= jdt<<GET rows="" where=""> outlier_flag_threshold);
:Above flag =N rows(rowsAbove);
rowsBelow= jdt<<GET rows="" where=""></GET></GET>
Erscheint wie eine Situation, in der entweder Matrixberechnungen oder die Verwendung der ColStat-Funktionen die Dinge beschleunigen könnten.
Mir ist nicht klar, wie Ihre Tabellen und Schwellen organisiert sind. Könnten Sie teilen
Beispieltabellen?