Category Archives: JMP Scripting Language

Web Scraping TripAdvisor

Since writing this post I have placed the associated code on the
JMP File Exchange …

The problem with the internet is that it gives you too much information, or rather, it takes too long to gather the information.  I often cross reference hotel booking sites with TripAdvisor, and its a laborious process.  So this evening I decided to streamline my process by writing a script to gather to user reviews into a JMP table and simple report.

(more…)

Scripting Data Filters

A question that I’ve been asked a few times is “how can I script a data filter?”.  My response to this question is always the same: “why would you want to do this?”.

In scripting, a common task is to manipulate data through row selections; a data filter is a tool that allows you to perform the same task interactively  without scripting.  Which means: you either script or you use a data filter.

So now the question becomes: “how can I implement functionality equivalent to a data filter using JSL?”.

In this post I will look at answering this question.  But since there are occasions where is is desirable to explicitly script the data filter, I’ll look at that too!

(more…)

Scripting Table Subsets

The best way to script table manipulation tasks such as joins and subsets is to first perform the task interactively and then make a copy of the source JSL that is automatically generated by JMP.  In many instances this code is sufficient, but sometimes you need to make the code more general, and that’s where things can get tricky.

In this post I will take you through the process of transforming the JMP-generated code into a more flexible piece of JSL.

(more…)

Namespaces with Include Files

When I write complex JSL applications I’ve tended to use named namespaces so that they are easy to consistently reference across include files.  But this has some limitations.  I am building a framework that will underpin multiple applications and so it is important that I use unique names for the namespaces.  The easiest way to do that is to use anonymous namespaces.  But there seems to be some strange behaviour …

(more…)

Performance Trap

I was recently processing a number of files using pattern matching. During the processing I was storing information in lists which were subsequently used to populate new JMP data tables.

hit computerEverything worked fine until I increased the number of files by a factor of 10.

After some time I started hitting ‘escape’ and ‘CTRL-Z’ in a frenetic effort to seize control of my laptop.

(more…)