Anaconda 不善于与他人相处,它想要完全控制环境。 它对库路径和初始化做了一些非标准的事情。 要在 Anaconda 上取得成功,我成功的一个简单方法是使用 Python Init() 语句的可选参数。 您必须同时使用 Python Sys Path() 和 Path() 参数。 第一个采用特定版本的 Python 所见的 sys.path,并且采用 JSL 列表的形式。
导入系统
打印(系统路径)
Path() 参数应该是 python3x.dll 的完整路径,如果这是您要使用的虚拟环境中的一个。 JMP 16.2 Windows 尝试将额外的 Anaconda 库路径添加到 JMP 的 LoadLibrary 路径,以便能够找到 Anaconda 需要的共享库。
另一点是,如果您尝试从 Python 虚拟环境运行,您必须利用 Python Sys Path() 参数。 Python 的默认定位机制是在注册表中查找,而虚拟环境是不在注册表中查找的,只是像 Anaconda base 这样的默认安装。
你好@ab_datascience ,
指定的那些包(matplotlib、pandas 等)很可能安装在 JMP 无法访问的位置。
常见原因可能与安装在虚拟环境或受限权限文件夹中的包有关。
验证所需的软件包是否可供您计算机上的所有用户免费使用。
下面的 JMP 文档页面提供了一些额外的指导:
https://www.jmp.com/support/help/en/16.0/#page/jmp/install-python.shtml#
你好,
我在以下链接中看到有人使用包含 TensorFlow 的 Anaconda 环境成功配置了 Python 和 JMP (将 JMP 与 Anaconda Python 和 Tensorflow 集成)。 我想做同样的事情。 但是,如果我按照该链接中描述的步骤操作,它仍然对我不起作用。 我认为这是因为我使用的是较新版本的 JMP Pro(我有 JMP Pro 16.2)。
到目前为止,我已尝试遵循 JMP 文档和其他论坛主题中的一些建议。 我做了以下几件事:
- 检查 JMP、Python 和 Windows 是否都具有相同的位(它们都是 64 位)
- 放JMP_LIB_PYTHON_PATH到 C:\Users\xxxxxxxx\Anaconda3\envs\jmp_dl\python38.dll(可通过 Windows 10 Pro 控制面板 > 系统 > 高级系统设置 > 环境变量访问)
- 放JMP_PYTHON_MODULE_PATH到 C:\Users\xxxxxxxx\Anaconda3\envs\jmp_dl\Lib (可按上述方式访问)
当我运行以下代码时:
Names Default To Here( 1 );
Python Init(Init Trace("TRUE"));
Show(Python Get Version());
Python Term();
我得到以下输出:
C:\Users\xxxxxxxxx\Anaconda3\envs\jmp_dl\python38.dll
Starting JMP to Python interface initialization
AFTER:
/**********/
print(_JMPsys.path)
/**********/
['C:\\Users\\xxxxxxxxx\\Anaconda3\\envs\\jmp_dl\\Lib']
/**********/
# Import the numpy module for array and matrix support
import numpy as _JMPnp
/**********/
/**********/
# Import the pandas module for Series/Data Frame support
import pandas as _JMPpd
/**********/
/**********/
# Import the sqlite3 module for Series/Data Frame support
import sqlite3 as _JMPsq
/**********/
/**********/
# Import the matplotlib module for 2D plotting
import matplotlib as _JMPmpl
/**********/
/**********/
# Set matplot lib to use non-gui backend Agg.
_JMPmpl.use('Agg')
/**********/
/**********/
# Import the matplotlib.pyplot module for plots
import matplotlib.pyplot as _JMPpp
/**********/
Unable to import the 'numpy' Python module
in access or evaluation of 'Python Init' , Python Init/*###*/(Init Trace( "TRUE" ))
Unable to import the 'pandas' Python module
in access or evaluation of 'Python Init' , Python Init/*###*/(Init Trace( "TRUE" ))
Unable to import the 'sqlite3' Python module
in access or evaluation of 'Python Init' , Python Init/*###*/(Init Trace( "TRUE" ))
Unable to import the 'matplotlib' Python module
in access or evaluation of 'Python Init' , Python Init/*###*/(Init Trace( "TRUE" ))
at line 3 in C:\Users\xxxxxxxxxx\xxxxxxxx\Documents\python_code_for_jmp_1.jsl
Python Get Version() = {3, 8, 10, "final", 0};
0
需要注意的重要一点是:它正在查找正确的 Python 版本(3.8.10,仅在 Anaconda 环境中使用)。
它没有找到任何 Python 模块(matplotlib、numpy、pandas)或 sqlite3 等。
我也尝试过做其他事情,但所有结果都会导致 1) JMP Pro 16.2 完全关闭/崩溃,或 2) 某种 JMP 警报。
有人可以指导我完成设置 Windows 10 Pro 环境变量的过程,以便 JMP Pro 16.2 不仅可以找到正确的 Python 版本,还可以找到它需要的所有 Python 模块。
任何想法将不胜感激! 谢谢。