Demo Topic
Python is a highly utilized open-source tool used by a large population of scientists and engineers – whether they want to or not – to address problems with which they are faced. These problems include upstream tasks of accessing data sources and addressing data structures before they can even begin their discovery phase via analytic exploration.
Purpose
To provide a plug-and-demo working journal and related examples for leveraging the Python integration in v18 to access data files for which JMP does not offer a method of extracting the data directly, and seamlessly hand off the data to JMP to pursue the remainder of the prep, visualization, and analysis.
Video
Below.
Analytical Workflow(s)
Data Access, Automation & Scripting
Industry(s)
General Purpose.
Questions Being Answered
Access data files for which JMP does not offer a method of extracting the data directly
What is the Story/Scenario
The data sourcing examples include:
- An ECG example based on .wfdb files, the original source of the idea being to pipe lead info to FDE; explored in Graph Builder and FDE.
- A spectral example based on .spa files, based on a post in the JMP SE community; explored in GB
- Automated testing equipment example based on .stdf files, prompted by Clark reminding me of this common JMP request; explored in control charts and capability tools
Each case study includes buttons for opening the related Python-content webpages (Github, PyPi), a Python .py file, and a JSL file.
- Download and extract the .zip files, maintaining all the files in the same folder. Journal references for ‘plug-and-demo’ will identify the files only if they persist together.
- Turn on ‘Show Embedded Log’ via right click in script editor or Preferences.
- Press ‘Run Script’ in the Python script file tool bar. It has instructions to run the JSL file also.
On initial run, in the log you will see Python installing libraries, then cycle through quickly printing small snippets (for demo purposes, displayed to show Python code is rolling within JMP) before JMP tables start popping out.
JMP Features and Platforms
Python Integration. Secondarily: Graph Builder, FDE; Graph Builder; Control Charts & Process Capability.
Discovery Call Preparation, What to Ask and Possible Pain Points to Look For
Python for data access has been the primary conversation we’ve had regarding its use since pursuing these conversations, rather than ML features. Perhaps you will find the same in your conversations.
Included Material
- Demo journal with situation content and 3 case studies w operational buttons
- Files pertaining to the 3 data access challenges
- ‘Situation Slide’ Word doc if you prefer to use actual slides
- Video walkthrough of demo content can be found here at the 44:45 mark (8 minutes) of the 20240617 Americas’ SE meeting
Leave Behind
https://community.jmp.com/t5/Mastering-JMP/Developer-Tutorial-New-Python-Integration-and-Scripting/ta-p/737959
Tips for Delivering the Demo
- Please note the short ‘Read Me’ at the beginning of the .py files – save demo time.
- After reviewing .py file, delete gray comments (after multiple #) for screen space
- Just before demoing, run the import statements alone – save demo time by having that pre-prepped.
- Within each .py file are 3 places for demo focus/content on the Python integration, denoted with “#HERE” + a comment about why it is a point of focus
Please report any challenges with buttons etc re the ‘plug-and-demo’ goal, and any thoughts or suggestions otherwise as you like. Any errors, omissions, questions - please share as well; I may have neglected a crucial initial step I’ve already got set up and can’t test.
thanks Christian for taking the time to put this example together to share