Entradas

Mostrando entradas de 2021

Primer Intento con Redatam WebServer (frecuencias simples)

Imagen
 E n honor a la verdad es una práctica de imitación, observación, aplicación de conocimientos previos y el sentido común. La presente versión tiene demasiados elementos del demo de Nueva Miranda pero decidí escribirlo para evitar que los hallazgos queden en el baúl de los olvidos. Consultando los materiales, observo que nuestros amigos de REDATAM están rediseñando o construyendo el nuevo sitio ahora direccionado por https://redatam.org y de ahí estamos bajando el software y los materiales de consulta. Al principio y creo en los primeros días me topé y recordé aquella frase de aquella persona “Tomasita” que ayudaba a mi esposa en las labores del hogar y con tono de queja le decía “no le hallo orilla” (esto debido a la cantidad de trabajo a realizar) y en el caso de el ejemplo de Nueva Miranda son varios archivos entrelazados y pues en el Instituto piden cosas rápidas y me tardaría más leyendo con detenimiento todos los materiales, pero como dice el maestro Polo Polo en uno de sus

Construcción de archivo CSV en R (archivo para Red7 Create)

Imagen
  Lenguaje R - Red7 Create. Uno de los puntos débiles y de falta de interés por REDATAM , es la generación de base de datos para este software, por lo que, y debido a que tenemos una comunidad grande y creciendo de programadores en lenguaje R , me di a la tarea de escribir (e investigar) líneas para construir nuestro archivo de tipo CSV que será la base para generar nuestra base de datos REDATAM .   Como purista, clásico y tal vez necio he creado una máxima: si el archivo esta con una determinada extensión (en este caso DBF - archivos XBase) pues hagamos su explotación en su software de origen, en este caso Microsoft Visual FoxPro que es el último que maneja este tipo de archivos. Sin embargo, reitero que tenemos que atraer al nicho de programadores de R que son todos mis compañeros de dirección así que vamos a crear un archivo con el cual mostraremos el proceso de creación de base de datos con código R , pasaremos al módulo Red7 Create , usando la utilería Red7 Admin y por últ

Comparativa consultas a base de datos Oracle vs archivo de texto plano usando R-Spark-JDBC

Imagen
Podemos decir que a veces los pequeños cambios pueden provocar resultados muy favorables sobre todo en el desempeño de alguna tarea manual o automatizada y fiel a mi afiliación a la cultura pop :) recordé el filme del efecto mariposa. Pues bien empezamos a hacer pruebas con Apache Spark ya no con archivos de texto, sino con la conexión a base de datos que en pasados artículos ya habíamos platicado pero ahora con mediciones en los tiempos. Las primeras comparaciones fueron muy decepcionantes ya que usando la conexión a la base de datos de Oracle la realizaba un poco más de 10 veces más lento que consultando el mismo número de registros con un archivo de texto, la primer prueba muy básica y sencilla: un archivo de  casi 18 millones de registros (17,953,202) consultados desde una tabla de una base de datos de Oracle contra el mismo número de renglones de un archivo de texto que realizará dicho conteo usando instrucciones dplyr . Sin embargo nuevamente el buen Edgar se fijó en el código q

XAMPP con Redatam WebServer

Imagen
En mi etapa como profesor siempre me gustó mucho el software XAMPP que es de Apache Friends ya que sin problemas te instala lo que necesites. En la documentación de REDATAM te explican como instalar ya sea Apache o Internet Information Services (IIS) quizás pues para no instalar software no necesario.  Para instalar XAMPP en este vídeo lo explico, una versión quizás ya pasada, aunque huelga decir es un sencillo siguiente-siguiente-siguiente. Bueno una vez instalado nuestro XAMPP y poniendo a correr nuestro servicio de Apache , descargamos el software de la página de la CEPAL , el Redatam WebServer, el cual es un archivo empacado y según los materiales de apoyo, el contenido de este archivo se tiene que copiar es un directorio llamado servers, yo lo hice en la unidad D y a continuación les muestro la primera carpeta de después de la de servers .   Ahora muy atentos, si se les ocurre tomar el material que viene en la página tendrán problemas y les marcará un error al querer despl

Tabulaciones con Red7 Process con variables alfabéticas

Imagen
En la versión anterior de REDATAM no era posible tabular con variables no numéricas, por lo que teníamos que crear un código numérico el cual relacionábamos con la clave alfabética aunque eso pudiera causar confusión al usuario final. Un caso - entre varios de la vida real - es la clave de morbilidad/mortalidad de la Clasificación Internacional de Enfermedades (CIE) la cual actualmente se esta utilizando la décima versión. " En el 1º Congreso Internacional de Estadística realizado en Bruselas en 1853, se encargó al inglés William Farr y al italiano Marc D"Espine preparar una nomenclatura uniforme de causas de mortalidad aplicables a todos los países. Posteriormente el francés Bertillón construyó la 1ª clasificación internacional de causas de mortalidad que fue aceptada en el Congreso internacional de Estadística en 1893. Desde entonces, la Clasificación Internacional de Enfermedades se revisa cada 10 años. Hablamos de CIE-10 cuando nos referimos a la décima revisión de la Cl

IT for everyone

Imagen
 Bueno el título es debido a que nuestro director adjunto nos manifiesta cada vez que puede, sobre la importancia del idioma en inglés para nuestra labor en el Instituto. Al igual que el inglés, las ahora conocidas como " Tecnologías de la información "  se está y se estará aun más convirtiendo en una competencia de orden transversal en todas las carreras de nivel  técnico y profesional. Siguiendo con los nuevos campos de conocimiento a tomar en cuenta en las oficinas nacionales de estadística ( y en todos los ámbitos en general) ahora se ve necesaria la introducción de la llamada " Ciencia de datos ". En un libro que estoy leyendo de forma pausada y lenta - esta en inglés - narran como la ciencia de datos aplicada en un modelo, pronostica los vientos que afectan a los vehículos pesados de carga, en las grandes llanuras norteamericanas. Este modelo lo desarrolló  General Electric ( GE ) en el área de transportación  y Pete McCabe vicepresidente de esta compañía menc

REDATAM saca el pecho con su versión X

Imagen
El jueves publiqué el artículo referente a los tiempos de las herramientas informáticas para la explotación de datos donde se concluye que con una computadora con más poder de procesamiento R usando Spark es quien obtuvo el menor tiempo para el cruce en este estudio. El viernes santo recibí un correo electrónico de Lenin Aguinaga donde aparte de darme su opinión sobre la comparación en cuestión, nos compartía una primicia, un regalo de pascuas. La verdad me he sentido muy halagado y honrado ante tal gentileza de nuestro amigo de Chile, ya que esta versión aun no se ha dado la luz en los sitios oficiales de la CEPAL/CELADE . Así que el día de hoy sin más preámbulos me puse a instalar esta nueva versión alfa de REDATAM X donde después de algunos tumbos que me ayudó a resolver Lenin, hicimos la prueba del mismo cruce quedando nuevamente sorprendido de la velocidad de nuestra querida herramienta. ¡¡ 22 segundos !! Como dije es una versión preliminar por ello los datos se presentan en fo

Honor a quien honor merece (o lucha de titanes)

Imagen
Uno de mis compañeros de trabajo me mandó un correo donde me ofrecía su apoyo para mejorar los tiempos usando R con Spark . Como dije en el anterior artículo con el lenguaje R llevaré casi 2 años y en el caso de Spark solamente unos cuantos meses, sin embargo este comentario hizo que me pusiera manos a la obra y aprovechando que me asignaron una nueva computadora de escritorio con muy buen poder de cómputo realice nuevamente pruebas de desempeño con tiempos increíbles para Spark . Una breve descripción de la arquitectura es la siguiente: Marca y Modelo: DELL Optiplex 9020 Procesador: Intel CORE i5 a 3.5 GHz Memoria RAM: 16GB Estamos por hacer una capacitación a personal que se ha contratado por lo que aprovechando el nuevo equipo hice videos a propósito donde se muestra como instalar R, Markdown y Spark , para ello utilice las versiones más recientes. Aparte modifiqué el código para que Spark utilice más memoria RAM que la que se asigna por default como se muestra a continuación

Las odiosas comparaciones

Imagen
Seguimos con el tema de los grandes conjuntos de datos y ahora hacemos unas pruebas de rendimiento en cuanto a consultas básicas, vamos a hacer un cruce entre mes de registro del puesto de trabajo y sexo de la persona que lo ocupa. Base de datos Oracle Hexadata 12c   Después de haber importado los archivos de texto con los datos de los puestos de trabajo para crear la base de datos de Oracle se procedió a hacer consultas para ver los tiempos de respuesta, para ello se utilizó una consulta usando el PIVOT del PLSQL de Oracle y se utilizó la VPN para realizarla desde home-office. El resultado de esta consulta fue de 3:19 minutos.

¡ Grande, REDATAM !

Imagen
 “ La importancia de no claudicar” . Quizás en anteriores artículos he mencionado – quizás no – la buena y grata impresión que causó en nosotros, la gente de México, del Instituto, la actualización, para algunos y la presentación para otros del software REDATAM en el año 2003. Nuestros compañeros de Chile durante varios días nos mostraron las bondades de este software y el curso en general recuerdo que tenía 2 vertientes, el enfoque desde el usuario y el enfoque desde el desarrollador. Han pasado poco más de 17 años y entre pausas y olvidos en mi caso, la herramienta siempre me ha parecido muy propicia debido a las múltiples ventajas contra algunos inconvenientes que considero son salvables. Antes de que se claudicara con la generación de las estadísticas de cultura procesamos unos 3 años de resultados utilizando REDATAM y en el pasado más inmediato lo usamos para los tabulados del módulo de CIBERACOSO así como algunas otras encuestas ya utilizando la versión 7. En mi segu

Los conteos de registros con dplyr con condiciones

Imagen
Seguimos con esta serie de artículos que tiene el propósito de apoyar a personas que como yo inician en el mundo de R y de alguna manera a la ciencia de datos, así como para mi es una especie de cuaderno de notas digital. El archivo con el que ejemplificó está en el sitio de INEGI y es la información de registros administrativos referentes a la estadística de mortalidad, en este caso específico para el año 2019. Una gran amiga doctora, me consultó sobre como obtener causas de muerte de menores de edad con estos datos. Una vez que descargamos el archivo lo que tenemos que hacer es crear el código en R para abrir este archivo en formato CSV usando Spark . Para lo cual usamos las siguientes instrucciones: library(sparklyr) library(dplyr) config <- spark_config() config$`sparklyr.shell.driver-memory` <- "16G" config$spark.memory.fractions <- 0.7 sc <- spark_connect(master="local", config = config) defun19 <- spark_read_csv(sc, name = "defun19&quo