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!
In my last post I was able to successfully re-orient a set of pixel data to reconstruct images of handwritten digits. SInce version 12 of JMP we have been able to create expression table columns that can contain images. That’s a logical location to store my newly revealed images:
My last post contained a picture of a window that contained a grid of images. This was a randomly generated array of images based on an extract from the MNIST dataset. This database contains over 60,000 samples of handwritten digits.
However, my pixel data was disoriented and the images looked more like hieroglyphs. Fortunately JMP understands an image as an ‘object’, and allows a variety of transformations to be applied to it, including flipping and rotating.
What is this? Any guesses?
(to be continued… )
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.
14 things you can do with lists.