¡Una vez más en la brecha!
Estuve hablando con mi papá hace unas semanas. No para salir con él, pero ha estado usando JMP desde la versión 1.0. Recuerdo haber visto los discos de 3,5” junto a nuestro Mac II-se cuando estaba aprendiendo a usar un mouse por primera vez. La misma máquina estuvo en exhibición en la conferencia Discovery Summit 2019 en Tucson, Arizona. Aquí hay una foto de eso:

De todos modos, mi papá y yo estábamos discutiendo mi primera serie de blogs Five Things . Mencionó que le gustaría que alguien escribiera una serie sobre cómo empezar a escribir scripts en JMP. En ese momento, ya estaba en el proceso de escribir otros artículos, así que lo guardé para un proyecto futuro. La vida, sin embargo, tenía otros planes. Una semana después, me pidieron que ayudara con una presentación para un cliente y, para mi sorpresa, ¡uno de los temas que querían que cubriera era una introducción a la creación de guiones! El universo ama las bromas, aparentemente.
De todos modos, ¡aquí vamos de nuevo! Siguiendo el formato de mi primera serie Five Things, estas son las cinco cosas que creo que todos deberían saber cuando comienzan a escribir un guión. Primero, un pensamiento conceptual.
Ver una necesidad, llenar una necesidad
Antes de comenzar a crear secuencias de comandos, debe considerar la necesidad. Lo más probable es que, si quieres escribir un guión, haya alguna razón. Tal vez lo estés haciendo para ser más eficiente en el trabajo. Tal vez esté buscando estandarizar métodos analíticos para un grupo. O tal vez usted es, de hecho, una de esas raras personas que decidieron recogerlo por sonrisas y risitas. Ninguna de estas son malas razones, aunque la última puede hacer las cosas un poco más difíciles (explicaré por qué en un momento). El punto es que debes tener una razón en tu cabeza y un propósito específico para tu primer guión.
Hay guiones, y luego hay guiones
Hay, en mi opinión de todos modos, dos tipos diferentes de scripts: los que actúan sobre los datos existentes y los que crean datos. Los scripts que funcionan con datos existentes interactúan con una tabla de datos y plataformas existentes en JMP para crear una nueva salida definida por el usuario. Estos pueden ser cosas tan simples como ajustar una ventana alrededor de varios informes o tan complejas como un informe personalizado en Application Builder. El punto en común clave es que los scripts como este son modificar contenido existente .
El segundo grupo son scripts que crean datos. Los scripts que crean datos pueden ser herramientas de simulación, gráficos personalizados, herramientas para administrar metadatos en un archivo JMP, etc. Este grupo es un poco más confuso, pero el tema común es que los scripts amplían JMP más allá de enriquecer los datos o análisis existentes. La mayoría de las veces, estos scripts van a crear contenido nuevo desde cero
Las secuencias de comandos que modifican el contenido existente son generalmente donde las personas comienzan cuando piensan en aprender el lenguaje de secuencias de comandos JMP (JSL). Aquí es también donde vamos a comenzar nuestra discusión. Entonces, demos un paso atrás y pensemos por qué estás interesado en aprender JSL.
Dame una frase, Vasily. Una sola frase, por favor.
Tómate un momento y piensa en tu necesidad . ¿Qué punto de dolor espera abordar con JSL? ¿Ves ahora por qué escribir guiones para sonrisas y risas (al menos al principio) puede ser complicado? Es mucho más probable que luches contra la curva de aprendizaje si tienes una razón para llegar a la cima. No digo que no puedas elegir a JSL por el gusto de hacerlo, solo que la lucha es más difícil sin la motivación adicional.
El próximo paso, y el último que vamos a cubrir en este episodio, es lo que haces con esa necesidad. La respuesta simple es que vas a hacer dos cosas. Primero, vas a escribir esa idea (posiblemente nebulosa) que te está impulsando a aprender JSL en una sola oración: una declaración del problema. Y, quiero decir solo una oración. Asegúrate de poder cristalizar la idea en algo tangible sobre lo que puedas construir. También ayudará a controlar el avance del alcance. Aquí hay unos ejemplos:
- Quiero automatizar toda la generación de gráficos para mi informe semanal en un solo script.
- Quiero automatizar el trabajo de formateo para una tabla de datos proporcionada por el cliente.
- Quiero generar un conjunto de gráficos de control a partir de un archivo de datos proporcionado por el sistema informático de mi fábrica.
Tenga en cuenta que no estoy hablando de detalles; Simplemente estoy indicando el punto de dolor que me hace mirar a JSL. Y entonces dejé de escribir.
Haz tu lista de tareas pendientes
¿Tienes el enunciado de tu problema? ¡Bien! Ahora vamos a escribir una serie de entregables específicos para su guión. Será nuestra lista de verificación para ayudarnos a localizar los recursos que SAS brinda para aprender JSL. No enumere ninguna interfaz gráfica de usuario (GUI) o interfaz de usuario (UI) específicamente. Enumere las acciones que debe realizar el script. Aquí hay ejemplos para las declaraciones de problemas anteriores:
Declaración del problema 1: Quiero automatizar toda la generación de gráficos para mi informe semanal en un solo script.
Lista de verificación:
- Extraiga un conjunto de datos de nuestra base de datos de producción que contenga los datos de las últimas tres semanas.
- Hacer un gráfico de tiempo vs temperatura para mi producto.
- Ejecute un análisis de tiempo frente a temperatura utilizando un modelo polinomial.
- Exporte los gráficos y los informes a un archivo de PowerPoint.
Declaración del problema 2: Quiero automatizar el trabajo de formateo para una tabla de datos proporcionada por el cliente.
Lista de verificación:
- Cambie el nombre de las columnas según los estándares internos (usando la tabla de especificaciones).
- Asigne unidades a las columnas necesarias (usando la tabla de especificaciones).
- Convierte Lat y Long a coordenadas geográficas.
- Cambiar unidades defectuosas columna de continuo a ordinal .
Declaración del problema 3: Quiero generar un conjunto de gráficos de control a partir de un archivo de datos proporcionado por el sistema informático de mi fábrica.
Lista de verificación:
- Importar datos desde la ubicación de la red.
- Asigne límites de especificación.
- Construir gráficos de control.
Tenga en cuenta aquí que no me estoy encajonando demasiado. Solo estoy creando una lista de cosas que necesito que haga el guión. Dado que asumo que nunca antes ha trabajado en JSL, también asumo que no sabe cómo abordará estos problemas. Al escribirlos, sabe lo que necesita buscar en la ayuda y los recursos. Que es donde continuaré en la próxima entrega de esta serie.
Pensamiento final para esta semana
Dado que esta serie durará unas pocas semanas, decidí hacerla más una serie de trabajo en conjunto que algo que acabas de leer. Entonces, tome estos últimos puntos que hice como tarea. Si desea alguna rendición de cuentas o comentarios, póngalos en los comentarios a continuación. Intervendré si puedo ayudar o le haré saber si es posible que se esté metiendo en problemas en el futuro.
Para obtener puntos de bonificación, abra una ventana de secuencia de comandos en JMP ( Archivo > Nuevo > Script ) y coloque la declaración del problema y las viñetas en la ventana del script, una por línea con una barra inclinada doble ("//") al comienzo de la línea. Es posible que vea que el color del texto cambia a verde para esas líneas en el Editor de secuencias de comandos JSL. Cubriremos lo que acabas de hacer en un próximo episodio.
Ah, y si te preguntas quién es Vasily y por qué debería darte una oración singular, échale un vistazo. aquí .
Buenos pensamientos.Para aprender JMP, la nueva edición de Saltar a secuencias de comandos JMP , de Murphrey y Lucas me resultó útil.