cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
The Discovery Summit 2025 Call for Content is open! Submit an abstract today to present at our premier analytics conference.
Get the free JMP Student Edition for qualified students and instructors at degree granting institutions.

Python Integration in JMP 18

Started ‎10-03-2024 by
Modified 3 weeks ago by
View Fullscreen Exit Fullscreen

Unlock the Power of Python Integration in JMP® 18

Welcome to the world of JMP 18, where one of the standout features is the enhanced Python integration capabilities. This article is designed to help you understand the value of this powerful tool, along with offering best practices for maximizing its benefits in your data analysis workflows.

 

What Does Python Integration Mean in JMP?

Video #1 - Motivations.mp4
Video Player is loading.
Current Time 0:00
Duration 1:52
Loaded: 0.00%
Stream Type LIVE
Remaining Time 1:52
 
1x
    • Chapters
    • descriptions off, selected
    • captions off, selected
    • en (Main), selected
    (view in My Videos)

     

    How Has Python Integration Evolved in JMP 18?

    Video #2 - Python Changes from Older Versions.mp4
    Video Player is loading.
    Current Time 0:00
    Duration 2:06
    Loaded: 0.00%
    Stream Type LIVE
    Remaining Time 2:06
     
    1x
      • Chapters
      • descriptions off, selected
      • captions off, selected
      • en (Main), selected
      (view in My Videos)

       

      Working with JMP Data Tables Using Python

      Video #3 - JMP Data Tables with Python.mp4
      Video Player is loading.
      Current Time 0:00
      Duration 5:22
      Loaded: 0.00%
      Stream Type LIVE
      Remaining Time 5:22
       
      1x
        • Chapters
        • descriptions off, selected
        • captions off, selected
        • en (Main), selected
        (view in My Videos)

         

        Using External Python Packages Inside JMP

        Video #4 - Install and use Python packages in JMP Virtual Environment.mp4
        Video Player is loading.
        Current Time 0:00
        Duration 5:21
        Loaded: 0.00%
        Stream Type LIVE
        Remaining Time 5:21
         
        1x
          • Chapters
          • descriptions off, selected
          • captions off, selected
          • en (Main), selected
          (view in My Videos)

           

          Creating a Pandas DataFrame from a JMP Data Table

          Video #5 - Create a Pandas DataFrame from a JMP Data Table.mp4
          Video Player is loading.
          Current Time 0:00
          Duration 3:47
          Loaded: 0%
          Stream Type LIVE
          Remaining Time 3:47
           
          1x
            • Chapters
            • descriptions off, selected
            • captions off, selected
            • en (Main), selected
            (view in My Videos)

             

            Executing JSL Code from Python

            Video #6 - Execute JSL Code from Python.mp4
            Video Player is loading.
            Current Time 0:00
            Duration 2:22
            Loaded: 0.00%
            Stream Type LIVE
            Remaining Time 2:22
             
            1x
              • Chapters
              • descriptions off, selected
              • captions off, selected
              • en (Main), selected
              (view in My Videos)

               

              Best Practices for Creating a JMP-Python Add-in

              [This topic coming soon!]

               

              Frequently Asked Questions (FAQs)

              View more...

              Q: How do I create a new Python Script in JMP 18? 

              A: Go through menu File > New > Script, select Python Script and start coding in the Script Editor. Alternatively, use keyboard shortcut 'Ctrl+Shift+Y' on Windows or 'Command+Option+Y' on Mac. 

              Q: Will packages that rely on Python versions prior to 3.11 work in JMP?

              A: No, unless your specific python package has forward compatibility, it is unlikely to be supported.

              Q: Is it possible to have different Python environments in JMP?

              A: Yes, but it currently requires manual file path adjustments. A simplified process is being developed for future releases.

              Q: Can package installations be redirected from a controlled repository?

              A: If configurable to install via command line pip for a regular Python environment, the same should apply to jpip. However, you may need to modify the jmputils.py file ($SAMPLE_SCRIPTS/Python/jmputils.py) to add appropriate environment variables and by default add additional command line flags. Once edited, copy the modified file into the JMP supplied python311.zip file as necessary.

              Q: Which coding conventions does the editor follow, Python or JSL?

              A: Python. A “Reformat Script” button is planned for a future release to make it easier to follow Python conventions. Automatic indentation improvements are also being developed.

              Q: Can something generated in JMP Python environment be published to JMP Live?

              A: Yes, if the output can be placed into a JMP report or table.

              Q: Is it possible to connect to a user-installed Python instance in JMP 18, as in JMP 17?

              A: No. The integration in JMP 18 isolates the JMP Python instance from any locally installed Python versions.

              Q: Can Workflow Builder accept Python as an alternative to JSL code?

              A: Not at the moment. Current capabilities focus on data access and Python and JSL interoperability.

              Q: How do I see which packages I have installed in my JMP Python environment?

              import jmp 
              
              import jmputils 
              
              jmputils.jpip('list')

              Q: Is group policy supported to disable jpip install functionality within the JMP environment?

              A: Yes, this was added to JMP 18.1 as a group policy and as an installer option. The group policy allows enabling/disabling jpip package installation support, while the installer option ensures that none of the package installation capabilities are installed onto the machine.

               

              Helpful Resources