Una buena consulta puede llevarte al éxito
Nivel: Principiante
Brian Corcoran, Director de Investigación y Desarrollo de JMP, SAS
JMP ofrece diversas maneras de incorporar una amplia gama de formatos de datos al producto. La razón es obvia. A lo largo de los años se han desarrollado numerosas herramientas para recopilar y formatear datos. En la mayoría de los casos, estas herramientas no permiten convertir los datos a tablas de datos JMP. Es necesario incorporar estos datos a JMP para su análisis. En otros casos, los datos pueden estar en una base de datos y es necesario extraerlos antes de comenzar. Obtener los datos puede consumir un tiempo valioso. JMP ha evolucionado con los años para incorporar potentes funciones de adquisición de datos que facilitan esta tarea.
Este artículo intenta ofrecer una pequeña muestra de cómo usar las funciones del Generador de Consultas en JMP, junto con un ejemplo sencillo del Asistente de Excel. Esperamos que también demuestre que el proceso también puede ser beneficioso, ya que se puede obtener información valiosa sobre los datos al preparar la consulta. Si bien la versión de Windows se utiliza para las capturas de pantalla de escritorio, todas las funciones aquí descritas también están disponibles en la versión de JMP para Mac. Se utilizó JMP 14, pero JMP 13 también puede realizar todo lo mencionado.
Este artículo presenta un caso hipotético. Imagine que está estudiando tendencias mundiales y que la base de datos del Banco Mundial suele proporcionar información valiosa. Un colega le informa que los datos del Indicador de Desarrollo Mundial de 2017 están disponibles recientemente y que los han incluido en la base de datos SQL Server de su empresa. Se trata de una tabla extensa, con más de 400 000 observaciones y 62 columnas. [1] Abra JMP y seleccione Archivo->Base de datos->Generador de consultas, abra la conexión a la base de datos y seleccione la tabla. En la primera pantalla del Generador de consultas, seleccione la tabla world_bank como tabla principal y utilice "Instantánea de tabla" para examinarla:
Query Builder Table SnapshotInstantánea de tabla del generador de consultasInstantánea de tabla del generador de consultas
Es un formato un tanto extraño, al menos para un usuario típico de JMP. Hay cuatro variables o columnas para la información del país y una columna para cada año presente. Las filas muestran lo que parece ser una región y luego los datos medidos. En algunos aspectos, parece lo contrario de lo esperado para una tabla típica de JMP. El nombre del país " Mundo Árabe " parece representar una región, lo que también resulta confuso. Si se pulsa el botón " Importar ahora ", la tabla se muestra y todo se aclara un poco. Al desplazarse hacia el centro, se puede ver que las filas comienzan con el país en cuestión y luego con los datos de un tema específico, como " Población Rural ". Todo esto está ordenado por país, lo cual no parece intuitivo.
Immediate Import Table AppearanceApariencia de la tabla de importación inmediataApariencia de la tabla de importación inmediata
Empecemos de nuevo. Esta vez, podemos seleccionar " Crear consulta " en lugar de " Importar ahora ". Sabemos que queremos las cuatro primeras variables con información del país, así que podemos seleccionarlas y pulsar " Añadir " en la pestaña " Columnas incluidas " del panel de selección de columnas del Constructor de consultas. Hay muchos datos, así que solo añadiremos las variables de 2010 a 2017. En este punto, la parte superior del cuadro de diálogo se ve así:
Initial Column SelectionSelección de columna inicialSelección de columna inicial Aún no hemos mejorado nuestra situación anterior. Ahora podemos mover la variable " Código de Indicador " al panel "Ordenar por " del Constructor de Consultas. Esto organizará los datos por tema de estudio, en lugar de por región o país. Esto parece más intuitivo para el análisis.
Ordered by Indicator CodeOrdenado por código indicadorOrdenado por código indicador
Todavía hay problemas con los datos. En primer lugar, contiene agrupaciones regionales que no son de interés en este momento. ¿Cómo excluir estas entradas agregadas? Además, ¿cuál sería la mejor manera de consultar un elemento específico, como "Consumo de fertilizantes" ?
Ciertamente sería posible importar todos los datos a JMP y luego eliminar las agrupaciones regionales si no ordenamos por “Código de indicador”. Sin embargo, esto supone una carga para quien analiza los datos. Si no es alguien que configura la consulta, podría resultar confuso. Dentro de la consulta, sería posible seleccionar solo los países de interés. ¿Qué sucede si queremos todos los países de la Unión Europea? (Iba a usar América del Norte, pero la definición del Banco Mundial solo incluye EE. UU., Bermudas y Canadá). Podríamos seleccionarlos manualmente, pero hay una mejor manera. Para ello, vamos a invocar rápidamente otra herramienta en JMP: el Asistente de Excel.
En este escenario, supongamos que trabajamos frecuentemente con datos del Banco Mundial. Los códigos de país son importantes, pero no intuitivos. Las tablas suelen usar los códigos sin especificar el nombre completo del país, como se puede ver en el sitio web. Podría ser útil tener esos códigos en una tabla aparte. Dicha tabla existe y se importa fácilmente desde el sitio web como archivo de Excel. En este caso, abra el Asistente de Excel en la tabla de países y códigos de país. El sitio web del Banco Mundial los agrupa en una tabla poco conocida llamada CLASS.xls, pero puede cambiarle el nombre. Hay dos tablas dentro del archivo: "Lista de economías" y "Grupos". Veamos "Grupos":
Preview of Groups Table in Excel FileVista previa de la tabla de grupos en un archivo de ExcelVista previa de la tabla de grupos en un archivo de Excel
Existe la agrupación para el Mundo Árabe que vimos en los datos del Generador de Consultas. Parece prometedora, pero al desplazarse hacia abajo aún no se muestra Europa, ya que la vista previa termina en 100 filas. Seleccione " Mostrar todas las filas " y podremos ver todo, incluyendo " Europa y Asia Central ", " Área de Europa " y " Unión Europea ". El grupo " Unión Europea " contiene los códigos de país de todos los países que actualmente pertenecen a la unión. ¿Podríamos usar esto para seleccionar los países en el Generador de Consultas? La respuesta es sí, así que extraigamos solo el grupo que necesitamos. Podemos hacerlo seleccionando la primera fila en la vista previa con " Unión Europea " y luego presionando el signo más verde junto a " Los datos comienzan en la fila".
Select the First Row in “European Union”Seleccione la primera fila en “Unión Europea”Seleccione la primera fila en “Unión Europea”
Ahora podemos pulsar el botón "Siguiente" en el cuadro de diálogo, seleccionar la última fila con " Unión Europea " y pulsar el signo más verde junto a " Los datos terminan en la fila ". Esto reduce los datos solo a los países que nos interesan.
Ahora podemos seleccionar " Importar " y obtener una fila con 28 entradas para los países de la Unión Europea. Guardaremos la tabla JMP resultante como "EU.jmp".
Ahora podemos regresar al Generador de consultas. Podríamos haber seleccionado los países que nos interesan con un tedioso proceso de selección en una lista por "Nombre del país" o "Código de país". Sin embargo, el Generador de consultas tiene un potente tipo de filtro llamado Coincidir con valores de columna. Para usarlo, primero arrastramos " Código de país" al panel Filtros . Esto producirá una lista larga con todos los códigos en ella. Ahora, podemos seleccionar el menú de triángulo rojo en " t1.Código de país " para Tipo de filtro y seleccionar " Coincidir con valores de columna ". Se presentará un cuadro que muestra los nombres de las tablas JMP abiertas. Como todavía tenemos abierto "EU.jmp", aparece en la lista. Lo seleccionamos, y la variable ( Código de país ) que queremos que coincida. También es importante asegurarse de que " Todas las filas " esté seleccionado en la lista desplegable, en lugar de " Filas seleccionadas ", ya que queremos todos los países en este caso.
Selecting the Match Column Values filterSeleccionar el filtro Coincidir valores de columnaSeleccionar el filtro Coincidir valores de columna
Esto reducirá nuestros resultados únicamente a las observaciones donde se incluye un país de la UE. No hay ninguna magia aquí. Estamos creando una cláusula WHERE/IN para sustituir los códigos de país. Si observa el panel SQL dentro del Generador de consultas, puede ver el SQL que genera JMP:
Generated SQLSQL generadoSQL generado
Esperamos haber simplificado mucho el proceso. Ahora que hemos reducido los datos a lo que realmente nos interesa, sería útil facilitar la selección de la información específica que queremos analizar. Para ello, podemos arrastrar " Nombre del indicador" al panel Filtros . Si bien podríamos hacer clic en el elemento que nos interesa y ejecutar la consulta, sería útil tener una interfaz más interactiva para cualquier usuario. Podemos pulsar el menú triangular rojo junto a " t1.Nombre del indicador" y seleccionar " Solicitar al ejecutar ". Esto nos mostrará un cuadro de diálogo para especificar el título de la solicitud al usuario final.
Prompt on RunAviso al ejecutarAviso al ejecutar
Ahora, al pulsar el botón " Ejecutar consulta" , obtendremos la lista de elementos y podremos seleccionar el que nos interese. Por ejemplo, podemos seleccionar "Crecimiento del PIB (% anual)" y obtener una tabla de 28 filas. Luego, podemos introducirla en el Constructor de gráficos. Al arrastrar el "Nombre del país" al área de colocación de Forma del mapa, se generará un mapa de Europa, y luego podremos arrastrar el año de interés. Los datos empiezan a escasear después de 2014, por lo que al seleccionar ese año se obtiene:

JMP busca "Eslovaquia" en lugar de "República Eslovaca", por lo que podría ser una oportunidad para usar Recodificar. Al analizar estos datos, parece que siempre realizaremos una operación similar. Seleccionaremos el nombre del país para la forma del mapa y, a continuación, el año que nos interesa para examinar los resultados. Si vamos a consultar un año determinado repetidamente, conviene guardar el script y colocarlo en el Generador de consultas como un script posterior a la consulta . Hay una pestaña junto al panel de vista previa para esto. Si vamos a nuestro gráfico anterior y, usando el menú del triángulo rojo, seleccionamos Guardar script -> En la ventana de script, obtendremos un script similar a este:
Graph Builder(
Size( 534, 454 ),
Show Control Panel( 0 ),
Variables( Color( :Name( "2014" ) ), Shape( :Country Name ) ),
Elements( Map Shapes( Legend( 7 ) ) )
);
Si pegamos esto en la pestaña "Script posterior a la consulta" , al seleccionar la observación que queremos examinar, siempre se ejecutará el mismo informe del Constructor de Gráficos tras la extracción de los datos y la creación de la tabla JMP. Esto simplifica enormemente una tarea repetitiva.
Post-Query ScriptScript posterior a la consultaScript posterior a la consulta
Lo mejor es que, al guardar la consulta, podemos configurarla para que el usuario final ni siquiera vea los diálogos del Generador de Consultas. Al seleccionar " Ejecutar al abrir " en el menú desplegable junto al campo "Nombre de la consulta" y guardar la consulta, el usuario final solo verá la solicitud y la tabla y el gráfico resultantes.
Run on OpenEjecutar en abiertoEjecutar en abierto
Query with Run on Open started from Recent Files Consulta con Ejecutar al abrir iniciada desde Archivos recientes Consulta con Ejecutar al abrir iniciada desde Archivos recientes Una advertencia al usar el filtro "Columnas coincidentes" es que la tabla con los valores a comparar debe estar presente en el equipo donde se ejecutará la consulta. Si esto representa un problema, existe una solución. Después de crear el filtro con las columnas coincidentes, acceda al menú del triángulo rojo. En este ejemplo, sería " t1.Código de país". Seleccione "Tipo de filtro -> Lista manual". Esto importará los valores creados por el filtro "Columnas coincidentes" a una lista de texto que se usará para la consulta SQL. Esta se guardará en la consulta la próxima vez que guarde, y ya no necesitará la tabla de datos para comparar. La desventaja de este enfoque es que se pierde la capacidad de modificar dinámicamente los valores coincidentes seleccionados y la consulta.
En este punto, hemos filtrado una gran cantidad de datos confusos y creado una consulta y un análisis repetibles que podemos enviar al usuario final. Quien utilice la consulta no necesitará conocerla, ni mucho menos JMP.
Convenciones utilizadas:
Los paneles de la ventana del Generador de consultas están en negrita
Los botones/controles de diálogo están “ entre comillas y en negrita”
Los nombres de variables/columnas están “ entre comillas y en cursiva ”
[1] Grupo del Banco Mundial. Indicadores del Desarrollo Mundial , Grupo del Banco Mundial, s.f. Web. 25 de enero de 2018. https://datacatalog.worldbank.org/dataset/world-development-indicators . Obtenido bajo la licencia Creative Commons CC BY 4.0.