
La bolsa de correo de ingeniería
Episodio 1: La economía de los servicios quitanieves
De vez en cuando, los ingenieros de JMP Systems nos topamos con preguntas interesantes que quedarían un tanto fuera del rango normal de JMP uso. Estas aplicaciones son generalmente inteligentes y demuestran que el uso de datos no es sólo para problemas técnicos o comerciales.
A continuación se muestra un ejemplo de una pregunta que recibí de un usuario (también llamado Mike) del estado de Nueva York que él y yo pensamos que sería divertido compartir.
La pregunta
Mike [JMP],
Estoy jugando con JMP usando datos que encontré sobre los totales de nevadas el año pasado. Me mudé a una casa nueva este verano y ahora tengo un camino de entrada de 387 pies de largo que será necesario arar. Hace poco estuve hablando con un contratista de quitanieves y él estaba tratando de convencerme de un contrato de temporada. Normalmente, cuando cobra por empujón, lo hace cada vez que tenemos 3 o más pulgadas de nieve a $75 por empujón. Ofreció un precio de $2,000 por el cual ara cada vez que hay nieve. El año pasado, me dijo, tuvimos 3” o más de nieve unas 20 veces, así que si esto volviera a suceder este año terminaría pagando $1,500 ($75 x 20). Así que sólo tendría que pagar $500 más para que él quitara la nieve cada vez que nevaba.

Como puede ver en mis datos, el año pasado solo hubo 5 veces con 3” o más de nieve. Por supuesto, le dije a este contratista que no estaba interesado. Terminé contratando a otro tipo que lo haría por $50 por empujón. Mi pregunta para usted es ¿por qué JMP coloca el total de nieve de 15” en el gráfico entre 2,5” y 3,0”? Dado que los totales están en orden descendente, ¿por qué el 15” no está completamente a la derecha?
Gracias,
Mike [Usuario]
Mi respuesta
¡Hola Mike!
En respuesta a su pregunta, creo que encontrará que la columna "Greenfield Center 1,6 W" tiene el tipo de datos configurado como "Carácter". Más allá del orden alfabético obvio, el orden se complica con los datos de los caracteres. Cuando combinas eso con la opción Conteo descendente en Graph Builder, predecir se vuelve más difícil.
Esto es lo que creo que está sucediendo: Graph Builder ordena primero por "Conteo descendente". Entonces, las categorías con más filas aparecerán a la izquierda y disminuirán a medida que te mueves hacia la derecha. Cuando tiene varios grupos con la misma cantidad de puntos de datos, es decir, 1 y 2, 1,5 y 2,5 y 15 – 9,5, Graph Builder utilizará reglas de ordenación normales. Dado que la columna tiene caracteres, eso significa que seguirá un orden pseudoalfabético. Esto significa que el orden para el último grupo sería 15, 3, 5,5, 6, 9,5, porque el orden alfabético es por caracteres, de izquierda a derecha. Usando un ejemplo más controlado, la forma en que JMP ordena los números entre 1 y 20 es diferente dependiendo de si el tipo de datos es de caracteres o numérico. Numéricamente, sería 1,2,3,…, 20, como era de esperar.Alfabéticamente sería 1, 10, 11,12, 13,…, 19, 2, 20, 3, 4, 5, 6, 7, 8, 9.
Una forma de anular este problema es utilizar una propiedad de columna Orden de valor. Puede definir el orden que desea que utilice JMP y anula el valor predeterminado. Con un Orden de valores definido por el usuario, la jerarquía utilizada en Graph Builder sería Conteo descendente, luego Orden de valores y luego el valor predeterminado para cualquier cosa que no esté definida en la propiedad de la columna Orden de valores.
Mejor,
METRO
Más pensamientos
Después de pensar en esto, me di cuenta de que había algunas formas adicionales de abordar esto y algunas visualizaciones más que podrían usarse para demostrar este punto. Primero, hablemos de una limpieza de datos. Los datos que usó Mike provienen del Sitio web de la NOAA .El sitio está configurado para descargarse un mes a la vez, por lo que requiere algo de trabajo de concatenación. Al observar los datos, hay algunos códigos de caracteres utilizados en los datos de precipitación numéricos para cada estación. M y T se utilizan para "perder" y "rastrear" respectivamente. Esto significa dos cosas. Primero, tenemos Datos fantasma .
En segundo lugar, tenemos un umbral por debajo del cual la NOAA no considera necesario informar de valores específicos. Tendremos que lidiar con esto de alguna manera. Además, los datos se proporcionan con un formato día-mes que JMP considera Carácter y le falta un año. Esto significa que si generáramos un diagrama de dispersión de series temporales, el orden sería incorrecto. Esto también deberá corregirse.
Primero, corregir la fecha es una serie de operaciones de Buscar y Reemplazar usando “-” como "buscar" y "/mm/aa" como "reemplazar". En la práctica, esto se ve así:

Una vez corregidas las fechas, probablemente sea una buena idea apilar los datos. Esto da más opciones de análisis. Con los datos apilados, ahora puedo asignar una propiedad de columna de valor faltante para que JMP considere que falta la "M". También puedo usar la recodificación para cambiar la "T" a un valor numérico. El Preguntas frecuentes de la NOAA dice que considera que la traza es "una pequeña cantidad de precipitación que mojará un pluviómetro pero que es inferior al límite de medición de 0,01 pulgadas". En este caso, simplemente lo recodificaré a 0,01.
Lo último que voy a hacer es crear una nueva columna, "Grupos de precipitación". en realidad usé Complemento de agrupación interactiva (V2) de Brady Brady , pero la lógica es bastante sencilla de realizar en el Editor de fórmulas. Si "Precipitación" es superior a 3 pulgadas, devuelve "Arado"; menos de 3 pulgadas es “Sin arado”; y si faltan datos, devuelve "Falta".

Después de configurar esta columna, oculté y excluí todos los valores faltantes.
Hay tres tipos de visualizaciones que me vienen a la mente en este caso. Una distribución, un gráfico de barras y un gráfico de burbujas. Dado que los datos están apilados, cada uno de ellos utilizará un filtro de datos local para seleccionar la estación de interés. La Distribución, basada en la columna indicadora que creé anteriormente, muestra muy claramente que se habría requerido arar cinco veces en la temporada 2016-17.

Un gráfico de barras, creado en Graph Builder, utilizando una línea de referencia y coloreando según sea necesario arar, muestra una historia similar.
Los argumentos de burbujas son simplemente divertidos y animar la historia es una excelente manera de mejorar el impacto del mensaje. Hay varias formas de abordar la visualización, según el gusto y el mensaje. El diagrama de burbujas también se puede exportar a HTML5 interactivo (expórtelo ejecutando los scripts en la tabla de datos adjunta y luego usando la opción de exportación correcta para su sistema operativo).
El primer diagrama de burbujas es un diagrama de tiempo animado. Cuando está animado, traza la precipitación diaria y colorea la línea según lo cerca que esté el nivel de precipitación del nivel crítico de 3 pulgadas para arar.

El segundo ejemplo muestra todas las estaciones en el conjunto de datos, nuevamente con la precipitación diaria registrada en el eje y.En este ejemplo, incluí el valor de precipitación como una variable de tamaño para que los marcadores se hagan más grandes a medida que suben por el eje y.

El ejemplo del mapa se creó ubicando la lista de coordenadas de la estación NOAA en el mismo sitio del que provienen los datos. Creé una tabla de búsqueda y utilicé una unión virtual para ingresar la latitud y longitud de cada estación según el nombre de la estación. Al igual que el segundo gráfico de burbujas, el tamaño de los marcadores se basa en la precipitación diaria registrada en una estación determinada. El mapa no es particularmente importante para la pregunta original, pero cuando está animado proporciona una imagen interesante de cuándo, dónde y cuán severas fueron las tormentas de nieve en Nueva York durante la temporada de invierno 2016-17. Para divertirte un poco, intenta localizar la tormenta que permitió a la gente hacer snowboard en Times Square en la ciudad de Nueva York (pista: fue en 2017).

¿Tiene preguntas divertidas o conjuntos de datos que le gustaría que un ingeniero de sistemas revise?Déjame un comentario o mensaje. Quizás convirtamos esto en algo para correr.
Una nota del autor
Para aquellos que lean esto nuevamente, no, no están locos, el título cambió un poco.Recibí una solicitud para actualizar el título para que fuera más fácil de encontrar para nuestros motores de búsqueda.Sólo puedo suponer que esto se debe a que algunos motores de búsqueda son encarnaciones modernas de bibliotecarios de referencia del siglo XIX sin sentido del humor.Disculpas por cualquier inconveniente.-METRO
Nota del editor: Este es el primero de una serie llamada
Bolsa de correo de ingeniería escrito por ingenieros de sistemas de JMP, que responden a todo tipo de preguntas técnicas sobre JMP.