我有一些代碼使用列中的名稱來檢查另一個數據表中的行數#是否高於或低於“異常值”閾值(我們只想使用固定值)對於該列。
代碼如下。我們通常這樣做30到50列(因此每行迭代30至50次)。它目前需要26秒,在一個數據表上(異常值被計數的那個_只包含少量(200)行。事情似乎太慢了。
我嘗試使用製表,並考慮總結 - 但我需要超過一個簡單的門檻。有關如何更快地完成此任務的任何建議?我需要能夠完成columnn的artbitrary數量,存儲在下面代碼中的“rankdt:Analysis Columns”中。
我嘗試將“獲取行所在”更改為“選擇位置”,然後計算所選行 - 但這並沒有使速度不同。
謝謝,
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>
看起來像矩陣計算或使用ColStat函數可以加快速度的情況。
我不清楚你的表格和門檻是如何組織的。你能分享嗎?
示例表?