JMP Pro 15 從日誌產生 Python 程式碼你好
正在嘗試從 jsl 腳本運行生成 Python 程式碼。 它運行良好。 當我將腳本放入日誌腳本按鈕中時,未產生 python 程式碼。
我嘗試了幫助中的範例,得到了相同的結果。
我正在使用 jmp pro15。
謝謝


回覆:JMP Pro 15 從日誌產生 Python 程式碼解決方法效果很好。
研發部門正在解決一個缺陷。
非常感謝。
回覆:JMP Pro 15 從日誌產生 Python 程式碼道歉。 我正在逐行測試程式碼,忘記進行最終測試。
如果你仔細觀察,你會發現我已經註解掉了生成 Python 程式碼的行,因此沒有編輯器視窗可以按標題捕獲並從中檢索程式碼。 以下腳本修正了該錯誤。 我還附上了一份日誌,顯示它是透過點擊按鈕執行的。
感謝您將此資訊發送給技術支援。
Names Default To Here( 1 );
fd = Formula Depot();
Show(fd);
dt = Open( "$SAMPLE_DATA/Iris.jmp" );
md = dt << Run Script( "Nominal Logistic" );
predictor = md << Publish Probability Formulas;
// Save code to string - doesn't work inside Journals
// py_code = fd << Generate Python Code(Formulas( predictor ), "No Editor");
// just generate to editor instead
fd << Generate Python Code(Formulas( predictor ));
// Get a handle to editor window and retrieve code from it
// Requires the title of the script as argument, which is based on
// model name and data set.
win = Window("Fit_Nominal_Logistic_Species");
py_code = win[scriptbox(1)] << get text;
Save Text File( "$TEMP\logist_J.py", py_code );
Open("$TEMP\logist_J.py");回覆:JMP Pro 15 從日誌產生 Python 程式碼謝謝。
解決方法既不能作為腳本窗口,也不能透過日誌來工作。 收到相同的錯誤訊息。
無論如何,我在技術支援處開了一張票。

回覆:JMP Pro 15 從日誌產生 Python 程式碼感謝您檢查, @傑夫·珀金森。
我也能夠重現問題。 當從日誌中呼叫產生 python 時,「無編輯器」選項將被忽略。 它「始終」啟動腳本編輯器,就像在 JMP 13 中所做的那樣。
這讓我想起了當時我是如何測試這段程式碼的。 因此,我使用相同的技術為您的腳本編寫解決方法。 它不是很漂亮,但在我們找到解決方案之前,它可能足以讓您繼續下去。 無論如何,請聯絡技術支援。
Names Default To Here( 1 );
fd = Formula Depot();
Show(fd);
dt = Open( "$SAMPLE_DATA/Iris.jmp" );
md = dt << Run Script( "Nominal Logistic" );
predictor = md << Publish Probability Formulas;
<BR />// Save code to string - doesn't work inside Journals
// py_code = fd << Generate Python Code(Formulas( predictor ), "No Editor");
// Get a handle to editor window and retrieve code from it
// Requires the title of the script as argument, which is based on
// model name and data set.
win = Window("Fit_Nominal_Logistic_Species");
py_code = win[scriptbox(1)] << get text;
Save Text File( "$TEMP\logist_J.py", py_code );
Open("$TEMP\logist_J.py");
回覆:JMP Pro 15 從日誌產生 Python 程式碼透過將該腳本放入日誌中的腳本按鈕中,我能夠按照您的建議重現您所看到的問題。
我覺得@nascif_jmp有聯繫技術支援的最佳建議, support@jmp.com 。他們將最有能力診斷問題並推薦解決方案。
請將您從他們那裡找到的任何資訊發回此處。
回覆:JMP Pro 15 從日誌產生 Python 程式碼謝謝。
但是,正如我之前所寫,我使用 jmp 幫助中的範例程式碼進行了嘗試。 當從腳本視窗運行時它可以工作,但當從日誌腳本按鈕執行時,它似乎不會產生 Python 程式碼(作為字串)。
這是幫助範例程式碼:
Names Default To Here( 1 );
fd = Formula Depot();
dt = Open( "$SAMPLE_DATA/Iris.jmp" );
md = dt << Run Script( "Nominal Logistic" );
predictor = md << Publish Probability Formulas;
// Save code to string
py_code = fd <<
Generate Python Code(
Formulas( predictor ),
No Editor
);
// shortcut using predictor reference
// py_code = predictor << Generate Python Code(No Editor);
Save Text File( "$TEMP\logist.py", py_code );
// Open code in editor window
fd << Generate Python Code( Formulas( predictor ) );
回覆:JMP Pro 15 從日誌產生 Python 程式碼當使用者點擊 Journal 按鈕時,您將「產生 Python 程式碼」訊息傳送到哪個物件?
它應該是有效的 Formula Depot 參考。 我的猜測是該訊息被發送到另一種類型的對象,並被忽略。
然後,保存 Python 程式碼的變數為空,這會在嘗試將其儲存到文字檔案時導致錯誤。
因此,您可以嘗試的另一件事是在程式碼中新增“Show(py_code)”語句。 始終仔細檢查變數的內容!
我還建議在技術支援的幫助下解決這個問題,因為您將能夠共享您的程式碼、資料等。
這對於弄清楚發生了什麼有很大幫助。