JMP Python 腳本介面指向與 JMP 原生資料夾不同的 Python 安裝目錄。你好
我正在嘗試編寫一個腳本,該腳本從 JMP 表發送數據,執行 Python 庫,並將輸出傳回給 JMP。
有些函式庫對 Python 的安裝有非常嚴格的要求。此外,我們當然還有一個獨立的 Python 安裝(即本機安裝,我稱之為非 jmp Python)。
我是 JMP Python 腳本新手,正在學習https://www.jmp.com/support/help/en/18.1/index.shtml#page/jmp/install-a-python-package.shtml#上的基礎知識。我的問題是,JMP 是否可以指定 Python 的安裝目錄,而不是預設的 JMP 安裝目錄?如果可以,能否提供一個 JMP Python 腳本範例?
謝謝
自動化和腳本編寫回覆:JMP Python 腳本介面指向的 Python 安裝目錄與 JMP 原生資料夾不同在 JMP 18 之前的版本中,你可以指定 JMP 執行特定的 Python 安裝目錄下的程式。但在 JMP 18 或更高版本中,你需要使用 `Run Program()` 函數,這似乎不太理想。
回覆:JMP Python 腳本介面指向的 Python 安裝目錄與 JMP 原生資料夾不同JMP 14-17 嘗試使用使用者係統上安裝的 Python。但這實際上僅適用於 Python.org 版本,如果系統上安裝了多個 Python 版本,則會出現問題。如果 JMP 正確識別了系統上的 Python 版本,一切正常;但如果識別失敗,使用者幾乎無法指定必要的參數來指向正確的 Python 版本。 JMP 14-17 僅透過 JSL 腳本指令提供介面。此外,它還導致腳本不具備可移植性,因為腳本的接收者可能未安裝 Python 或安裝了不相容的版本。
JMP 18 的目標是:
- 為了確保 Python 能與 JMP 開箱即用,無需任何設定。
- JMP 18 的每個使用者都將擁有相同的 Python 3.11.x 版本,因此腳本相容性將不再是一個問題。
- 提供一個以Python為中心的環境,而不是僅提供JSL介面的Python環境。
- 提供便利的外部 Python 套件安裝方式,以增強 JMP 的功能。
- 開始提供 JMP 和 Python 環境之間更好的資料交換,尤其是在資料表方面,使其成為零拷貝引用,而不是透過檔案系統在環境之間傳輸的資料副本。
要實現資料表的零拷貝集成,需要我們連結到 Python 共享庫,因此只能使用 JMP 提供的嵌入式 Python。
JMP 19 捆綁了 Python 3.13.x。由於需要修復 bug 和安全性更新,JMP 將持續與最新的 Python 版本保持緊密聯繫。雖然我們的維護版本會包含更新的 Python 版本,但我們會始終保持 JMP 特定版本發布週期內的主版本號和次版本號一致。
JMP 20 很可能將隨 3.14.x 版本一起發布。
可以將 JMP 環境視為 JMP 特有的虛擬環境。您完全可以使用 JMP Python 與外部 Python 環境進行互動。我的建議是,使用 JMP 內部的 Python 將資料移至資料庫,或透過 mmap(共享記憶體)、套接字、ZeroMQ 等多種方式將資料傳遞給其他 Python 環境,而無需將資料寫回檔案系統。
此時,可以使用 JSL 的 RunProgram() 或 Python 的多進程來啟動另一個 Python 環境。
回覆:JMP Python 腳本介面指向的 Python 安裝目錄與 JMP 原生資料夾不同感謝您的回覆。我閱讀 JMP Python 文件的速度有點慢。我希望能夠找到一些帶有範例的模板(也許已經有了)。可能還有其他問題。
我對Python的需求源自於:
1. EBM(可解釋增強機)-JMP 中不支援此功能
2. SHAP 特有的圖表…SHAP 可以透過不同的平台取得,但我更喜歡原始 SHAP 庫提供的特定圖表格式。
特別是 EBM 專用的 Python 和 scikit-learn 版本。我需要一個範例來示範如何安裝和運行一個簡單的庫,然後將輸出以資料表的形式傳回給 JMP,這樣可以加快我的工作速度。我想我已經弄清楚了“如何安裝”的部分。
根據我的理解,如果要使用不在 JMP 安裝資料夾中的 Python 庫,則需要透過 Run_Program() 函數來解決問題。
回覆:JMP Python 腳本介面指向的 Python 安裝目錄與 JMP 原生資料夾不同一般來說,只要模組與 JMP 的 Python 安裝相容,就可以使用它。您可以使用 `Python Install Packages("套件名稱")` 命令來安裝它。 ),假設它可以透過 pip 安裝。
回覆:JMP Python 腳本介面指向的 Python 安裝目錄與 JMP 原生資料夾不同你好@altug_bayram ,
“我希望有一個帶有示例的模板。”
腳本索引中有一些簡單的 Python 範例。 Python 整合 > 函數 > from_dataframe 中也有一些範例,或許正是您需要的。
雖然不是你問的那些問題,但或許會有幫助:
EBM(可解釋增強機)
我對 EBM 不是很熟悉,但 JMP 中的 Predictor Screening 平台和 JMP Pro 中的 Bootstrap Forest/Boosted Tree 平台或許能滿足你的需求。從網路上對 EBM 的簡要介紹來看,它似乎融合了 Bootstrap Forest 和 Boosted Tree 的特點,但這可能過於簡單化了。
SHAP特定圖表
這個連結對繪製圖表有幫助嗎?
Python 特性:
最終,使用 Python 特有的函式庫將資料表傳送到 Python,然後將資料和/或映像匯入 JMP,應該不會有任何技術障礙。
我附上了一個範例腳本,它使用 ephem 庫計算行星位置,然後將資料匯入 JMP 進行視覺化。請注意,第 9-10 行在 JMP 的 Python 環境中安裝 ephem 函式庫,只需執行一次即可。