“你可以用 JMP 编写 Python 代码!”
虽然这是事实,但仅凭这句话就可能让一些人想:“既然可以使用 Python 编辑器或集成开发环境,为什么还要费劲地用 JMP 编写代码呢?”
接下来我将介绍 JMP 中包含的 Python 集成功能。通过使用此功能,
“使用 Python 环境可以增强和扩展 JMP 的功能。”
这是优势之一。

然而,即使有了这样的解释,你可能仍然不太明白,并且会想:“那么它到底能做什么呢?”
因此,在本博客系列(共 4 部分)中,我将使用具体的代码和使用示例来解释它实际能做什么以及它的好处。
在本系列文章的第一部分中,我们将通过一个简单的例子来介绍结合使用 Python 和 JMP 的优势。具体来说,我们将涵盖以下主题:
- JMP包含一个Python环境。
- 如何使用 Python 脚本编辑器编写和运行 Python 代码
- 软件包安装和 JMP 自带的 jmp/jmputils 软件包
- 示例用法:使用 JMP 的气泡图可视化使用 pandas_datareader 获取的经济指标数据。
*本文假设使用 Windows 版本的 JMP。
JMP中将安装Python环境。
截至撰写本文时,JMP 的最新版本是“JMP 19”,但与之前的版本“JMP 18”相比,其 Python 集成功能已显著扩展。
安装 JMP 时,Python 环境也会安装在安装文件夹中。因此,您无需在运行 JMP 的计算机上单独安装 Python。
此外,该 Python 环境允许您在 JMP 编辑器中编写和执行 Python 代码,并使用跳跃包来操作 JMP 数据表和其他元素。

*注意:用户无需自行运行上述“jmp_python.exe”。
Python脚本编辑器
JMP 的“Python 脚本编辑器”允许您直接在编辑器中编写和执行 Python 代码。
在 JMP 主窗口菜单中选择【文件】>【新建】>【Python 脚本】即可打开 Python 脚本编辑器。选择【编辑】>【运行脚本】即可执行您编写的代码,执行结果会输出到日志窗口。

软件包安装和加载
在 Python 中使用 pandas 或 NumPy 等包时,首先需要安装这些包,然后使用进口语句将它们加载到代码中。
同样,在 JMP Python 集成环境中,您需要在该环境中安装软件包才能使用它们。
此外,您还可以使用 JMP 自带的jmp 和 jmputils软件包。这些软件包主要允许您执行以下操作:
- 跳跃 :操作 JMP 数据表(创建新表、添加/删除/修改列等),从打开的 JMP 数据表中检索信息。
- jmputils :将软件包安装到 JMP Python 集成环境中
在以下示例中,我们将使用 Python 熊猫包和pandas_datareader包,因此请使用以下命令安装它们。

一旦安装到 JMP Python 环境中,关闭 JMP 后就不需要重新安装它了。
使用 Python 集成环境和 JMP 的好处
将 Python 集成开发环境与 JMP 结合使用的优势在于,它能够结合 Python 和 JMP 各自的优势。以下是它们的一些优势:
Python:允许您使用 JMP 中未包含的功能和分析方法。
Python 拥有众多软件包,可用于实现数据采集和最新的分析技术。通过使用这些软件包,您可以将 JMP 标准库中未包含的功能和方法集成到您的分析中。
JMP:图形用户界面操作我擅长“探索”数据。
另一方面,JMP 在数据探索功能方面表现出色,例如基于 GUI 的数据表操作、交互式分析以及图表与数据表的链接。仅使用 Python 实现这些操作并非易事。
换句话说,您可以使用 Python 来扩展分析方法的范围,并使用 JMP 来探索和可视化结果,从而互补彼此的优势。
以下示例 1 将对此进行解释。
示例 1:使用 pandas_datareader 加载和可视化经济指标数据
Python 包pandas_datareader可用于检索世界银行提供的特定国家/地区的经济数据。
因此,我们将使用 JMP Python 集成环境来获取这些数据,并将其加载为 JMP 数据表。此外,我们将使用 JMP 的“气泡图”来可视化各项指标逐年和逐个国家/地区的趋势。
需要获取的数据:2000 年至 2024 年 G7 国家的年度人均 GDP、预期寿命和人口数。
代码示例如下(Example1-1_WorldBank.py,包含在本博客中)。如果您经常编写 Python 代码,您会发现它的编写方式与普通的 Python 代码相同。
这段代码主要描述了以下两件事:
- 导入pandas_datareader包以检索世界银行数据。
- 获取的数据(DataFrame 格式)经过修改,包括更改列名,然后作为 JMP 数据表导入。

jmp.from_dataframe() は、pandasなどのデータフレームからJMPのデータテーブルを作成する関数です。
- 上述代码中,只有 ` import jmp`和最后的`jmp.from_dataframe(df) ` 是 JMP 特有的。其余部分都是标准的 Python 代码。
从脚本编辑器菜单中选择 [编辑] > [运行脚本] 来执行此命令,将打开如下所示的 JMP 数据表。

我们现在已经将数据获取为 JMP 数据表,因此我们可以使用 JMP 的功能来可视化和探索这些数据。
例如,使用 JMP 的 [气泡图],您可以按如下方式指定列,以查看每个国家/地区的 GDP 与预期寿命随时间变化的关系动画。

Python 和 JMP 在此代码及其后续分析中所扮演的角色如下:
Python :使用 pandas_datareader 从世界银行检索经济指标数据。
JMP :使用具有动画功能的气泡图可视化采集的数据。
这是双方优势相结合如何成功开展一系列分析的一个例子。
此外,可以通过选择 [文件] > [另存为] 将用 Python 脚本编写的代码保存为 Python 代码格式(带有 .py 扩展名)。
jmp 和 jmputils 软件包的详细信息(使用脚本索引)
jmp 和 jmputils 包中可用命令的详细信息可以在脚本索引中找到([帮助] > [脚本索引])。将左上角的选项切换到“Python”即可查看每个命令的语法、描述和代码示例。

综上所述
在第一部分中,我们介绍了 JMP 包含一个 Python 环境,您可以使用 Python 脚本编辑器执行代码,并且使用 Python 获取的数据可以作为 JMP 数据表处理。
下次( 第二部分)本节将介绍如何为示例 1 编写从数据采集到可视化(气泡图)的整个过程的代码,并讨论使用 Python (.py) 和使用 JSL (.jsl) 编写代码之间的区别。
作者:Naohiro Masukawa(JMP 日本)
Naohiro Masukawa - JMP 用户社区
现代在线娱乐世界为玩家提供了众多休闲博彩选择,其中Betking 赌场占据着独特的地位。该平台以其丰富的游戏种类而闻名,包括老虎机、经典桌面游戏以及来自领先软件开发商的创新老虎机。Betking 致力于为重视博彩领域服务质量和可靠性的用户提供舒适安全的博彩环境。
除了丰富的游戏种类,我们还非常注重奖金和奖励机制,这使得游戏过程更加精彩纷呈。透明的游戏规则、快捷的交易处理以及全天候的客户支持,共同塑造了我们良好的品牌形象。我们采用先进的数据保护技术,确保每位访客的隐私和安全。对于那些寻求了解赌场和博彩行业最新动态的用户而言,我们是您获取实用信息和享受优质娱乐体验的可靠来源。