<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Una de las cosas que menciono a menudo a los recién llegados a JMP es que el "Poder de JMP" está en las tablas de datos; por lo general, me miran un poco con recelo, se retuercen un poco y tratan de cambiar el tema a la nueva frescura. y generalmente responden con "Claro que no, pero no me importan las mesas bajas, quiero saber sobre las redes neuronales profundas, profundas". - todo a su debido tiempo, mi joven Padawan. Para respaldar mi afirmación, todo lo que tenemos que hacer es mirar dónde los desarrolladores de JMP han colocado la Mesas elemento de menú, justo después de Archivo y antes de DOE. Está claro el nivel de importancia que ellos mismos dan a las mesas, ¡a la altura de la respiración! Actualmente hay doce opciones debajo del menú de la mesa y para alcanzar el nivel ninja de John Sall debes entenderlas todas. Afortunadamente, JMP tiene un excelente material de capacitación para ayudarlo con eso, y lo dejaré para que lo estudie durante sus meditaciones. Para esta publicación, voy a mostrar un script simple para obtener una tabla de resumen sencilla.
Personalmente, uso tablas de resumen todo el tiempo. Los uso para verificar los valores en una columna, los uso para seleccionar filas en la tabla principal a través de la propiedad de enlace de la tabla, los uso para informes a la administración, y cuando es necesario, me corto el cabello con ellos, básicamente la mejor pregunta sería, "cuándo no uso tablas de resumen ..." y, por supuesto, la respuesta es cuando los datos requieren una transposición, apilamiento, unión o concatenación ligeramente sutil según lo dicten el nivel ninja (y los datos).
¿Por qué puede preguntar si necesitamos un script para crear una tabla de resumen cuando el primer elemento del menú en el menú Tablas es Resumen?

En primer lugar, para alcanzar el nivel ninja de John Sall, controlarás a JMP con tu mente; sin embargo, antes de que podamos esperar alcanzar ese nivel de habilidad, debemos caminar. Y debemos caminar antes de poder correr, y las secuencias de comandos son la forma en que podemos saltar a un ritmo un poco más rápido que al caminar, lo cual es una buena compensación hasta que se desarrollen nuestras habilidades de fuerza (JMP). En segundo lugar, sería entender que las tablas resumen y las agregaciones son el comienzo de la canónica Dividir Aplicar Combinar método descrito por Hadley Wickam - (que está muy lejos en el viaje por la montaña hasta el nivel ninja de John Sall). Y, por último, porque al aplicar este método me he ahorrado una tonelada de clics del mouse de botón de resumen y ahora he acumulado suficiente tiempo para escribir esta publicación de blog.
Y sin más molestias, aquí está el script JSL de tabla de resumen proporcionado. Tenga en cuenta que se proporciona en un formato funcional práctico y amigable con los ninja, como lo son todos los buenos scripts. Esto hará que sea bastante fácil para ti doblarlo a tu voluntad y hacer modificaciones para que revele todos los secretos de la mesa ninja.
// comenzar script
// DEFINICIONES
Nombres predeterminados aquí (1); // ¡Siempre comience los scripts con esto!
// la función creará una tabla de resumen de recuentos de la tabla de datos actual
// requiere que se seleccione una columna en la tabla
sumdt = Función ({dt}, {Local predeterminado},
selcollst = dt << Obtener columnas seleccionadas (cadena);
// Coge las columnas seleccionadas
Si (NItems (selcollst)> 0, // verifica que una columna esté seleccionada en la tabla
resumenexpr = Expr ("dt << Resumen (Grupo (sublst))"); // expresión base para una tabla de resumen
listastr = ""; // marcador de posición de cadena vacía
// construir Expr
para (idx = 1, idx <= NItems (selcollst), idx ++,
Si (idx == 1,
listastr = "Columna (\!" "|| selcollst [idx] ||" \! ")"; // para la primera columna
,
listastr = listastr || ", Columna (\!" "|| selcollst [idx] ||" \! ")"; // si hay columnas adicionales
);
);
SubstituteInto (resumenexpr, "sublst", listtr); // realizar la sustitución
sumdt = Eval (Analizar (resumenexpr)); // aquí es donde ocurre la magia
retorno (sumdt); // Siempre es bueno devolver un identificador, ¿tal vez lo usará en otro script?
, // entonces no se selecciona nada en la tabla de datos; es bueno preguntarle al usuario si no ha seleccionado nada
Subtítulo(
{200, 200},
"Seleccione una columna para agregar",
Fuente ("Arial Black"),
Tamaño de fuente (16),
TextColor ("rojo"),
BackColor ("negro"),
Hablado (0)
);
Espere (4);
Título (Eliminar);
);
);
//PRINCIPAL
dt = tabla de datos actual ();
sdt = sumdt (dt);
// fin del script: el formato de este blog no es bueno para JSL ...
Si bien esto es bueno y puedes verificarlo fácilmente por ti mismo, siento que si no incorporamos esto en nuestro flujo de trabajo, de alguna manera no estamos realmente tratando de llegar a ese nivel ninja. Además, sería apropiado un momento de discusión sobre el flujo de trabajo. Tengo este script simple vinculado a una combinación de teclas de acceso rápido del teclado y mi flujo de trabajo consiste en: mientras tengo una tabla de datos abierta, selecciono una columna del panel de columnas y luego uso mi combinación de teclas de acceso rápido para obtener un agregado ( tabla resumen) de las columnas seleccionadas. Eso realmente es todo lo que hay que hacer. Las habilidades ninja son aparentemente engañosamente simples.
Visor de columnas (clase grande): seleccione columnas agregadas de interés

Presione el combo de teclas de acceso rápido para nuestro script de resumen de tabla para obtener el agregado por (edad, sexo)

Espera, tecla de acceso rápido dices ... Entonces, ¿cómo vinculamos el script a una tecla de acceso rápido? Buena pregunta: estoy seguro de que hay una mejor referencia ninja (JMP) sobre esto, pero brevemente ...
1. copia el script a tu portapapeles
2. En Ver -> Personalizar -> (seleccionar) Menús y barras de herramientas

3. Debajo de la sección de barras de herramientas, haga clic derecho para agregar un Nueva barra de herramientas

4. Nombre dicha barra de herramientas; por supuesto, Ninja sería apropiado

5. Expande ninja y selecciona el guión sin título.

6. En el panel de la derecha, asigne un nombre a su script y pegue nuestra función JSL en la sección 'Ejecutar este JSL'

7. Elija un buen ícono JMP incorporado - hey gracias JMP Solo tomaré prestado ese ícono de tabla de resumen

8. ¡Asegúrate de asignar tu atajo! ¡Obtendrás un nivel ninja adicional por eso!

¡Dale a OK y sube de nivel!
Puede obtener esta pantalla de personalización, simplemente presione Aceptar

Si eres una de esas personas visuales y quieres ver tu nuevo botón, dirígete a Ver -> Barras de herramientas y asegúrese de que su nueva barra de herramientas Ninja esté marcada



¡Disfruta de tus nuevas habilidades de mesa de Nina!
Mejor,
don