Thanks for the memory

by John Sall, co-founder and Executive Vice President of SAS; creator and chief architect of JMP

In the very first version of JMP, data columns remembered the modeling type. Committing the modeling type when you set up the data table means that you never have to say it again. The attribute affects how every platform treats the column. When Distribution looks at the column, it already knows whether to treat the values as categories or as numerical measurements. Fit Y by X changes the whole analysis between four different platforms depending on the modeling types of Y and X. By remembering the modeling type, the rest of JMP seems not only easy, but intelligent, saving many burdens later. In JMP 14, we extended the modeling type because we were handling new types of data (multiple response and unstructured text).

Although assigning the modeling type became a requirement, optional column properties opened up a rich opportunity to remember many other things that platforms could put to use. There are 35 column properties you can specify in the Col Info dialog, and a few more that can be set through platforms.

If you spend time working on axis settings for a plot, you don’t want to have to do it again the next time. Just click Save to Column Property and the Axis column property will be remembered and applied nearly every time you use that column again in a graph. Those stored memories make work much easier the more you invest in them.

Remembering analyses becomes easy with the Save Script commands. Whenever you complete an analysis that you feel was productive, use Save Script to Data Table to make it easy to do again.

Remembering is a common theme across JMP, including:

·         Recall buttons to retrieve remembered platform launches.

·         Preferences.

·         New Tables that store their Source scripts.

But there have been some things we wished JMP remembered – but didn’t.

For example, suppose that after doing a long sequence of cleanup operations on data to prepare it for analysis, you get new data and want to do the same operations again. It sure would have been helpful if JMP could have remembered what was done to the last data so that it could be replayed to do it again with the new data.

Now, with the enhanced log, JMP 16 can do that. When Enhanced Mode is activated through Preferences, the log will remember most interactive operations you do to your data with “action recording.” It’s similar to the recording features you may be familiar with in spreadsheets. 

When JMP remembers the things you tell it, you don’t have to tell it again.

In a presentation last year, I did a long sequence of actions to access some data from a website and transform it in many ways to make it suitable for analysis. Here they are interactively:

1)  Import the data using the Internet Open command


2)  Delete an empty column.

3)  Stack the data, going from many columns to many rows.

4)  Select all rows with Confirmed of zero, then delete them.

5)  Change a column “Date” to “Char Date”; make a new formula column “Date” accessing the data from the previous column but as a numeric date. Delete the Char Date column.

6)  Change a column to the shorter name “Country.”

7)  Do a Summary to accumulate data from Country.

8)  Produce a bubble plot showing confirmed cases animated across date with a background map. 

Now you can have the best of both worlds: Do it interactively and have a script of what you did.

With JMP 16, each one of those steps is recorded in the enhanced log.

If I go to the menu of that log and select Save Script->to Script Window, I have a script that has captured all that work, so that I can regenerate the results back from the beginning.

I have just saved a ton of time that would have gone into writing the scripts, including looking up the scripting syntax in the reference documentation. Also, by looking at the scripts, I can learn the JSL language for all those operations. I can also edit the resulting scripts to customize, streamline, add features and see the resulting script, complete with comments that were generated automatically!

By saving all those access and cleanup steps, I can now recreate the analysis later with the latest data posted to the website. I also have a record of those steps that can later be audited in case there are questions or requests for reproducibility.

Users often compare the experience of using a GUI point-andclick system to programming with a script-based system. The point-and-click approach is usually the easiest; with scripts, while you invest more work initially, you can do it again just by running the script. Now you can have the best of both worlds: Do it interactively and have a script of what you did.

To JMP 16: Thanks for the memory. 

† The title is the name of Bob Hope’s signature song, sung with Shirley Ross in the movie “The Big Broadcast of 1938,” winning an Academy Award for best original song in 1938.

John Sall on the memorable features in JMP 16:

About the Author

John Sall, co-founder and Executive Vice President of SAS, joined Jim Goodnight and two others in 1976 to establish what is now the largest independent vendor in the business intelligence market. Sall designed and developed many of the software’s earliest analytic procedures; he also created JMP software in the late 1980s and remains its chief architect. Sall is a Fellow of both the American Statistical Association and the American Association for the Advancement of Science.

JMP Foreword

Let's stay connected!

You may contact me by email regarding news, events and offers from JMP. I understand I can withdraw my consent at any time.


JMP Statistical Discovery LLC. Your information will be handled in accordance with our Privacy Statement.