按降序對列進行排序並使用 4 個最大的進行計算我有一個資料表,需要從標記為「Nozzle #」的一系列欄位中取得前 4 個最大值。 這些列值因變數或標記為“測試#”的列而異。

然後,我需要套用這些值,並在新列中計算每個測試的圓面積。 由於我有一個更大的資料表,我想使用 For、If 和 Contains 邏輯對列進行分組,或者 JSL 中是否有更有效的方法?
回覆:按降序對列進行排序並使用 4 個最大的進行計算請看一下我給你的第一個公式。它首先建立給定行的不同列的所有值的清單。然後對值進行排序,最後將前四個值放入字串中。
如果您將程式碼新增至最新程式碼中,則會產生包含前 4 個最大值的欄位的值。
回覆:按降序對列進行排序並使用 4 個最大的進行計算嘗試了一下,程式碼如下所示,但它給了我所有已排序的值。
theList = {};
For( i = 2, i <= 7, i++,
For Each Row(
Eval( Parse( "Insert Into( theList," || Char( Column( dt, i )[Row()] ) || ")" ) )
)
);
theList = Sort Descending( theList );屈服,
<SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="image.png" style="width: 814px;"><SPAN class="lia-inline-image-display-wrapper" image-alt="image.png" style="width: 814px;"><span class="lia-inline-image-display-wrapper" image-alt="image.png" style="width: 814px;"><img src="https://us.v-cdn.net/6038925/uploads/images/21024iC715F1791A69F0B3/image.png" role="button" title="image.png" alt="image.png" /></span></SPAN></SPAN>
回覆:按降序對列進行排序並使用 4 個最大的進行計算嘗試使用此表格
dt = Current Data Table();
theList = {};
For( i = 2, i <= 7, i++,
Eval( Parse( "Insert Into( theList," || Char( Column( dt, i )[Row()] ) || ")" ) )
);
theList = Sort Descending( theList );回覆:按降序對列進行排序並使用 4 個最大的進行計算所以我嘗試使用 for 循環將列放入列表中,如下所示清單第一在噴嘴_script.jsl 檔案中。 每當我嘗試對它們進行排序時,僅對列名稱進行排序,而不對列值進行排序。 我還嘗試使用您顯示的程式碼,並且清單在日誌中顯示為空,如下所示。

我的整體目標是這樣的:

(注意:我手動輸入了“最大”列值。 然後對「面積」列套用(「最大」/4)^2 公式。)
我在下面附上了數據表和我的腳本。 謝謝你!
回覆:按降序對列進行排序並使用 4 個最大的進行計算以下是執行此操作的一種方法的範例。我承認這有點瘋狂,但它應該向您展示一些 JCL,讓您了解自己可以做什麼。我已經在您第一次查詢中顯示的資料表的新列中完成了計算。

這是我為新列開發的公式
theList = {};
Insert Into( theList, :Nozzle 1 );
Insert Into( theList, :Nozzle 2 );
Insert Into( theList, :Nozzle 3 );
Insert Into( theList, :Nozzle 4 );
Insert Into( theList, :Nozzle 5 );
Insert Into( theList, :Nozzle 6 );
theList = Sort Descending( theList );
theOutput = Char( theList[1] );
theOutput = theOutput || ", " || Char( theList[2] );
theOutput = theOutput || ", " || Char( theList[3] );
theOutput = theOutput || ", " || Char( theList[4] );
theOutput;回覆:按降序對列進行排序並使用 4 個最大的進行計算我想要每次測試的前 4 個最大噴嘴值。 所以,它會是:
18684 = 5.5 5 4 0
18685 = 5 5 4 0.5
18688 = 5.5 5 4 0.5
18689 = 5 5 0.5 0
回覆:按降序對列進行排序並使用 4 個最大的進行計算您想要每行的噴嘴 # 列的前 4 個最大值,還是所有噴嘴 # 列的所有行的前 4 個最大值?