我剛剛升級到 JMP 13,它使許多自定義腳本停止工作。 我已將問題追溯到列表處理 loc 查詢結果的方式發生了變化。 以下代碼過去在 JMP 12 中返回“pear”,但現在返回 {“pear”}。
mylist = {"apple","pear"};
mychoice = "pear";
showchoice = mylist[loc(mylist, mychoice)];我使用 list[loc()] 語法創建 SQL 逗號分隔字符串來執行存儲過程。
新的行為雖然出乎意料,但卻是合乎邏輯的。 遺憾的是 Loc() 仍然不會將列表參數作為查找值 - 這本來是一個有益的結果。 您建議如何獲得所需的結果:
- 將 Loc() 結果轉換為數字?
- 在我的代碼中將 showchoice 替換為 showchoice[1] ?
- 其他?
我可以將我的選擇列表轉換為字符串並去掉 { & } & \!"。 這並不總是有效,因為我向用戶顯示的文本列表並不總是與為 SQL 請求選取相應鍵的列表相同。
這有點像預測模型的過度擬合。 您的代碼將根據 JMP 的實際工作方式進行調整,而不是其應有的工作方式。 這很好,直到下一個版本:)
我覺得洛克()應該採用一個矩陣並返回真實元素的位置(非零)。
包含(列表,項目)使用列表並返回目標項目的位置。