Hola, me llamo Colleen McKendry y soy redactora estadística sénior en JMP. Esto significa que documento muchas de las plataformas estadísticas del software. Antes de empezar en JMP, hace unos 9 años, ni siquiera había abierto JMP. A lo largo de mi carrera, he ido aprendiendo JMP sobre la marcha para saber lo suficiente como para escribir sobre él. Mientras aprendía sobre JMP, una de las cosas que me resultó muy útil fue el Índice de Scripting de JMP. En aquel momento, también sentía que le faltaban algunas cosas, así que pensé que tenía mucho potencial, pero parte de la información no era tan completa como podría ser, y cosas así.
Hace un par de años, alrededor de JMP 16, mi compañero Michael Crotty y yo iniciamos un proyecto para modernizar los aspectos estadísticos del Índice de Scripting de JMP. Esto implicaba básicamente asegurar que la información fuera completa, robusta y lo más útil posible.
Recientemente, terminamos nuestra primera revisión completa de todas las plataformas de estadísticas que estábamos analizando, y creo que el Índice de Scripting se encuentra en un excelente momento. Por eso, pensé que sería un buen momento para dar esta presentación y dar a conocer más sobre él. Tanto si nunca lo han oído hablar como si son usuarios avanzados, sea cual sea su nivel, espero que esta charla les resulte útil.
Para quienes no sepan qué es el Índice de Scripting, es una herramienta importante para aprender JSL, el lenguaje de scripting de JMP, y por lo tanto, el lenguaje nativo de programación de JMP. Cada vez que abres una ventana de script y empiezas a escribir algo, estás programando en JSL. El Índice de Scripting es una colección de información sobre funciones, objetos y cuadros de visualización de JSL, sobre los que hablaré más adelante. Cada entrada incluye una breve descripción y un script de ejemplo integrado que puede ejecutarse directamente desde el propio índice.
También hay una función de búsqueda que ofrece opciones de filtrado personalizables, algunas de las cuales se han actualizado recientemente para, esperamos, mejorar la experiencia del cliente. ¿Dónde se encuentra el Índice de Scripting de JMP? En el producto, hay varias maneras de acceder al Índice de Scripting. La primera es simplemente a través del menú Ayuda. Si hace clic en el menú Ayuda, encontrará la opción "Índice de Scripting", que puede usar para abrir, o tiene opciones para acceder a ella mientras está trabajando en un script. Si está codificando en una ventana de script y desea obtener más información sobre una función u objeto específico, puede presionar la tecla Alt y hacer doble clic en esa función u objeto; el Índice de Scripting se abrirá y se completará con la entrada que le interese.
De forma similar, en un script, también se puede hacer clic derecho en la función u objeto, y aparecerá la opción "Ayuda al Índice de Scripting", que funciona de la misma manera. Recientemente, se ha publicado una versión en línea del Índice de Scripting en jsl.jmp.com. Esta es la primera vez que la información del Índice de Scripting está disponible en línea. Es idéntica al índice del producto. Se trata simplemente de una forma diferente para que los usuarios accedan, compartan o utilicen la información del Índice de Scripting.
Vamos a profundizar. Así es como se ve el Índice de Scripting al abrirlo. He colocado recuadros alrededor de las diferentes áreas del Índice de Scripting que voy a mencionar, así que empezaremos con esta esquina superior izquierda, que contiene varios controles de navegación. Primero, tenemos este pequeño botón que cambia la vista del Índice de Scripting si quieres cambiar la disposición de la vista. Luego están los botones de navegación, de adelante hacia atrás. Si estás buscando o navegando, puedes usar estos botones para ir adelante y atrás sin tener que volver a escribir nada.
A continuación, tenemos una lista desplegable con todas las categorías, que se muestran en la lista de selección izquierda. Tenemos Funciones, Objetos, Python y Cuadros de visualización. Si selecciona una de ellas, se mostrarán solo las funciones o los objetos de la lista. En la categoría Funciones, se encuentran las funciones integradas de JMP. Estas se basan más en código, por lo que los resultados se verán en el registro, no en la interfaz de usuario. Algunos ejemplos son funciones numéricas, matriciales, de caracteres y cualquier tipo de función probabilística. Todas ellas estarán incluidas.
Los objetos, por otro lado, se basan principalmente en la interfaz de usuario. Son partes dinámicas de JMP que pueden recibir instrucciones mediante mensajes para realizar ciertas acciones. Se trata de elementos visibles en la interfaz de usuario, como tablas de datos, columnas de datos, plataformas y ventanas de resultados, y las entradas de esta categoría estarán relacionadas con ellos. Cambiar una columna de datos, añadir una opción a una ventana de resultados, etc.
La categoría Python contiene características específicamente relacionadas con la integración con Python, pero no abordaré este tema en esta charla. Finalmente, tenemos los Cuadros de Visualización. Se trata de diferentes tipos de cuadros rectangulares que se utilizan para crear informes o nuevas ventanas en JMP. La relación entre estos diferentes Cuadros de Visualización en un informe se representa mediante el árbol de visualización. Todas las entradas de esta categoría se centran en la creación de Cuadros de Visualización y la adición de opciones, por ejemplo, una ventana de inicio, opciones de cuadro de opción, casillas de verificación, etc.
A continuación, analizaremos estas dos listas de selección: la de la izquierda contiene los nombres de las categorías y la de la derecha, los nombres de los elementos. Estas listas están relacionadas jerárquicamente, por lo que los elementos de la derecha se incluyen en el nombre de la categoría seleccionada a la izquierda. En esta imagen, podemos ver que el Generador de Gráficos de Control está seleccionado a la izquierda. Todos estos nombres de elementos de la derecha están relacionados con un objeto del Generador de Gráficos de Control. Cualquier nombre de elemento que seleccione en esta lista de la derecha rellenará el resto de la información del Índice de Scripting.
Eso es lo que vamos a repasar ahora. El resto de la ventana "Índice de Scripting" contiene toda la información, como los elementos útiles que busca. Vemos que hay un nombre de elemento en la parte superior y luego una sintaxis o prototipo. Esta es simplemente una estructura de código básica que explica cómo debe codificarse la entrada, incluyendo las opciones que contiene.
También hay una breve descripción que básicamente explica la función de la entrada y, a veces, la plataforma en la que se encuentra. Luego, se puede ver que hay una ventana de script incrustada y una ventana de registro incrustada con un ejemplo ya rellenado. Así, se puede ejecutar este ejemplo directamente desde Scripting Index, que ejecutará el código y mostrará la salida, ya sea en el registro o en la interfaz de usuario. Esto permite ver código de ejemplo sin necesidad de programar.
Si ve un pequeño icono desplegable en el área de ejemplos, significa que hay varios ejemplos para esa entrada. Puede hacer clic en él para ver los diferentes ejemplos y ver si hay algo más que le interese. Finalmente, tenemos algunas opciones de ayuda adicionales. Ver también abrirá un menú desplegable con una lista de otras entradas del Índice de Scripting utilizadas en este script de ejemplo. En este caso, variables. Sé que "variables" es otra entrada del Índice de Scripting, por lo que al hacer clic aquí, se mostrará y luego podría navegar a la entrada de variables del Índice de Scripting para obtener más información.
También contamos con un botón de Ayuda de Temas que te llevará a la documentación en línea del área que estés consultando. En este caso, si haces clic en él, accederás a la documentación en línea de Control Chart Builder. A continuación, tenemos la función de filtrado y la barra de búsqueda, que te permiten buscar en el Índice de Scripting cualquier término o frase que te interese. En esta lista desplegable, encontrarás varias opciones para refinar tu búsqueda o simplemente hacerla más específica.
De forma predeterminada, al buscar algo, se busca en todo el Índice de Scripting. Se buscan todos los nombres, prototipos, descripciones y ejemplos. Si desea cambiar esto, hay opciones en la sección inferior que le permiten buscar solo en ejemplos o solo en la categoría y los nombres de los elementos, si así lo desea.
La sección superior de estas opciones es de selección única, por lo que solo puede elegir una a la vez. Esto le ayuda a refinar su búsqueda según estas condiciones. Cabe destacar que, al realizar una búsqueda, los resultados no se clasifican ni se muestran en ningún orden significativo, salvo en orden alfabético.
Ahora voy a hacer una breve demostración. Me voy. Vayan a JMP. Como mencioné, pueden acceder al Índice de Scripts a través del menú Ayuda, como este. Si tuvieran un script, por ejemplo, si tuviera este script abierto, estoy creando algo sobre el Cribado de Respuestas. Puedo presionar Alt y hacer doble clic en Cribado de Respuestas. Vemos que se abre el Índice de Scripts y que el campo de búsqueda se completa con el elemento en el que hice doble clic. Así, tenemos todo tipo de resultados relacionados con el Cribado de Respuestas, de los cuales puedo obtener más información.
Voy a salir de esto para empezar desde el principio. Aquí está el botón de alternancia que mencioné, que simplemente cambia la vista. Luego están los controles de navegación. Como ya había una búsqueda, podía volver a los resultados de mi evaluación de respuestas sin tener que escribirla, o podía retroceder hasta el momento en que la borré.
Estas son las categorías. Podría ver solo las Funciones, solo los Objetos, Python o los Cuadros de Visualización. Si bien no lo mencioné en la presentación de PowerPoint, también hay un botón de Versión. También puedes refinar la lista según la versión de JMP en la que se agregó la entrada. Si solo quisieras ver las entradas agregadas después de JMP 18, podrías hacerlo si quisieras buscar información nueva.
Ahora tenemos nuestra lista de selección. A la izquierda, voy a volver al Generador de Gráficos de Control si lo encuentro. Listo. Pueden ver que, a la derecha, todos estos elementos están relacionados con objetos del Generador de Gráficos de Control. Al hacer clic en ellos, el Índice de Scripting se actualiza dinámicamente con información sobre el nombre del elemento específico en el que estoy haciendo clic.
Aquí está la entrada "Generador de gráficos de control", que también se mostró en la presentación de PowerPoint, y aquí está el script que se completa automáticamente. Puedo ejecutarlo usando este ejemplo, y ejecutará automáticamente el script. Puedo revisarlo. Quizás estoy intentando compararlo con la descripción para ver si puedo identificar algo. Tengo este menú desplegable, lo que significa que hay más de un ejemplo de "Generador de gráficos de control". En este caso, hay varios ejemplos.
Puedo ir aquí abajo, hacer clic en "Rare Event Chart" y ejecutar el ejemplo correspondiente. Esto me dará el gráfico G. Aquí está ese pequeño "Ver también". Como mencioné, este script de ejemplo incluye varias otras entradas del índice de scripts. Si quisiera saber más sobre cómo especificar Sigma, por ejemplo, podría hacer clic aquí. Voy directamente a la entrada Sigma y puedo leer sobre cómo se especifica la desviación estándar. Puedo leer sobre el valor predeterminado y obtener más información. Luego, puedo usar el botón Atrás para regresar al ejemplo que estaba viendo originalmente. Si hago clic en este botón de "Ayuda de Tema", se cargará la documentación del Generador de Gráficos de Control. Minimizarlo.
Solo quiero mostrar algunos ejemplos de las otras categorías. Si me fijo solo en las funciones, a modo de demostración, voy a mostrar algunos ejemplos muy sencillos. Para las funciones numéricas, tenemos la función de valor absoluto que puedo ejecutar aquí. Pueden ver abajo, ahí es donde está la salida en el registro. [inaudible 00:15:41] un poco más arriba.
También debo señalar que en estos ejemplos, el script incrustado es completamente editable, así que puedo entrar y añadir una nueva línea si quiero. También puedo ejecutarlo y obtener ese resultado. Todo lo que edites, añadas o elimines, permanece en esta ventana del script, sin importar dónde hagas clic. Puedes ir aquí o a diferentes nombres de categoría. Si vuelves a los valores numéricos y absolutos, seguirán ahí. Todo esto se conservará hasta que cierres la ventana del Índice de Scripting o cuando empecé a editar. Quizás hayas notado que apareció este botón adicional, así que también puedo hacer clic en él para restablecer el ejemplo a los valores predeterminados y eliminar todo lo que haya editado.
Ahora, un ejemplo de cuadros de visualización, como mencioné, se trata de rellenar ventanas JMP o agregar elementos nuevos a ventanas JMP existentes. Aquí tienen un ejemplo básico de creación de una nueva ventana con una casilla de verificación, como pueden ver aquí. También pueden agregar elementos a una ventana existente. Este es un cuadro de marco, que básicamente son los rectángulos grandes en una ventana JMP. En este script, puedo ejecutar la primera parte, que es un script bivariado, y ese es simplemente el informe bivariado de JMP normal.
Luego, usando código adicional, puedo ejecutarlo y se agregará un polígono sobre el informe bivariado. Esto no está relacionado específicamente con Scripting Index, pero quería mencionar cómo acceder al árbol de visualización, ya que lo mencioné en la presentación de PowerPoint. Puedes hacer clic derecho en este icono de divulgación, ir a Editar, Mostrar estructura de árbol. Básicamente, estos son todos los elementos del cuadro de visualización, por lo que todos tendrían entradas dentro de Scripting Index y podrías entender cómo se integran los cuadros de borde con los cuadros de marco, qué puedes agregar, cómo agregar marcadores a un gráfico o cómo obtener información sobre los marcadores en un gráfico; todos estos detalles esenciales. Solo quería mostrar eso rápidamente. Deshazte de todo esto.
Lo último que quería hacer en la demostración era simplemente hacer algunas búsquedas para mostrar qué opciones podrían ser útiles para acotar una búsqueda. Tengo todos los valores predeterminados activados y digo que quiero volver a los gráficos de control, así que me interesa buscar "gráfico de control". El primer resultado que aparece es, de hecho, comparar con el Gráfico de decisión de control ubicado en algún lugar del Modelo de ajuste. Esto no es lo que me interesaba, ya que quería un gráfico de control. Esto se debe a que la búsqueda solo busca los términos por separado, por lo que esto contiene "control" y "gráfico", pero no necesariamente juntos. Por lo tanto, puedo usar la opción "Contiene frase" para asegurarme de que todos mis resultados de búsqueda contengan "gráfico de control" como frase, todo el conjunto. Esto podría ser útil para asegurarme de tener los ejemplos que me interesan. Puedo borrar eso y restablecerlo a los valores predeterminados.
Usar la barra de búsqueda es realmente útil para usuarios nuevos, y no necesariamente para quienes desean aprender mucho sobre scripting. Si fuera un usuario nuevo de JMP y quisiera realizar un ANOVA, sabemos que JMP no siempre llama a las cosas como se hace en la literatura estándar. Trabajo en JMP y conozco JMP. Sé que puedo encontrar un análisis ANOVA en la plataforma Oneway. Para un usuario nuevo, esto podría ser muy difícil de entender simplemente usando la interfaz de usuario.
Podría buscar "ANOVA" en la barra de búsqueda y vería que el primer resultado muestra u oculta un informe ANOVA. Esto parece muy prometedor. Puedo ejecutarlo. Veo que está relacionado con este análisis unidireccional. Incluso podría reiniciar el programa para ver cómo se ve la ventana de inicio y tener una buena idea de lo que tendría que hacer en la interfaz de usuario si quisiera saber cómo realizar un análisis ANOVA.
Si quisiera más ejemplos, podría seguir bajando. Al llegar al tercer resultado, vería que se trata de un análisis multivariante de la varianza. No me interesa necesariamente. Solo quiero un ANOVA estrictamente, así que para acotar la búsqueda y asegurarme de que ninguno de mis otros resultados contenga entradas de ANOVA, puedo usar la opción "Coincidir con palabras completas". Esto elimina ese resultado y un par más, por lo que ahora busco ANOVA como una palabra por sí sola, no necesariamente si ANOVA está dentro de otra palabra. Esto podría ser útil para lo que estés buscando.
Volviendo a la configuración predeterminada. Ahora, para mi último ejemplo de búsqueda, supongamos que te interesa la programación. No eres necesariamente un usuario nuevo, pero quieres aprender a programar algunas cosas por tu cuenta; en particular, tienes matrices y, por alguna razón, quieres realizar tu propia descomposición en valores singulares. Te preguntas: "¿Cómo lo hago en JSL?".
Puedes buscar la descomposición en valores singulares. Observamos algunos resultados, pero estos primeros parecen estar realizando la descomposición en valores singulares dentro de una plataforma y no necesariamente solo a través de código propio. La barra de búsqueda también juega con estas categorías filtradas. Puedes configurar esto para que solo se muestren funciones, y ahora tenemos las cuatro funciones en JMP que te permiten realizar tu propia descomposición en valores singulares en JSL. Puedes revisarlas, decidir cuál es la mejor para ti y continuar con tu descomposición en valores singulares.
Eso es todo por la demostración. Solo quería volver rápidamente a la presentación. Pantalla completa. Quería terminar con un par de mis formas favoritas de usar el Índice de Scripting y, con suerte, reiterar que creo que no es solo para programadores avanzados, sino que también puede ser muy útil para nuevos usuarios. Por lo tanto, la primera, que mencioné en la demostración, es usar la función de búsqueda. Es muy útil para buscar lo que JMP llama algo diferente, como ANOVA versus Oneway, por ejemplo.
Es útil para encontrar en qué plataforma se encuentra una técnica estadística específica. Si te interesa una técnica, pero no estás seguro de su ubicación exacta en una plataforma, puedes usar el Índice de Scripting para averiguarlo rápidamente. También puedes usar el Índice de Scripting para encontrar ejemplos o tablas de datos para una plataforma específica. Obviamente, es útil para aprender scripting básico. Además, creo que incluso ahora, siempre que desarrollo scripting, tengo el Índice de Scripting abierto como referencia.
En mi caso, una ocasión en la que me resultó útil fue al crear un complemento. En nuestro complemento, teníamos ventanas de inicio personalizadas, otros diálogos y añadimos elementos a informes JMP existentes. Por lo tanto, la categoría "Cuadro de visualización" en el Índice de Scripting fue extremadamente útil para aprender a añadir opciones a las ventanas de inicio, como casillas de verificación y similares, y también a añadir diferentes elementos a un informe JMP existente.
Finalmente, creo que es una buena manera de obtener documentación básica sin salir del producto. Si estás trabajando, quizás no quieras usar un navegador para buscar en nuestra documentación; de esta manera, puedes permanecer en el producto y obtener información básica que, con suerte, te será útil. En caso contrario, puedes usar el botón "Ayuda del tema" para acceder directamente a la página o sección de la documentación donde puedes obtener más información.
Eso es todo por mi parte, y esto fue grabado, pero estaré en el chat mientras miras esto, así que si tienes alguna pregunta, no dudes en enviarla allí.