Package: pyredatam
Genera consultas REDATAM en python.InstalaciónDesde pypi (lo más sencillo):pipinstallpyredatamClonando el repositorio e instalando en developer mode:virtualenvpyredatam# Create new environmentsourcepyredatam/bin/activate# Activate the environmentcdpath_to_pyredatam_repositorypipinstall-e.# Install in developer modepipinstall-rrequirements.txt# Install dependenciesUsoimportpyredatam# para generar una consulta de lista por áreasquery=pyredatam.arealist_query("FRAC","PERSONA.CONDACT",{"PROV":["02","03"]})printquery"""
RUNDEF Job
        SELECTION INLINE,
         PROV 02, 03
    <BLANKLINE>
    TABLE TABLE1
        AS AREALIST
        OF FRAC, PERSONA.CONDACT
"""# para hacer la consulta a la base REDATAM del Censo 2010 de Argentinadf=pyredatam.cpv2010arg.make_arealist_query(query)# devuelve un pandas.DataFrame con el resultado# para hacer otras consultas REDATAM que no sean de tipo lista por áreashtml=pyredatam.cpv2010arg.make_query(query)# devuelve un html con el resultado, que debe ser parseado# para construir el diccionario de entidades, variables y categoríasdicc,entidades_geo,entidades_data=pyredatam.cpv2010arg.scrape_dictionary()Generar consultas REDATAMEsta es una lista de los tipos de consultas que el sistema REDATAM
permite, la idea es ir implementando todas ellas en este paquete. Si
necesitás usar alguna que aún no ha sido implementada, bienvenidas todas
las contribuciones!Estadísticas (Falta implementar)Frecuencias (Falta implementar)Cruce de Variables (Falta implementar)Promedio (Falta implementar)Mediana (Falta implementar)Conteo (Falta implementar)Lista por Áreas (SOPORTADO!)Una o más variables(variables cuyos datos se quiere obtener)Nivel de Salida(nivel de agregación geográfico al cual se piden
los datos)Incluir Nombres del Área de Salida(incluir nombres además de
los códigos de las áreas de salida -Falta implementar)Título(título que tendrá la tabla con los resultados
solicitados)Selección de Área(restringir los resultados a un área
geográfica en particular)Filtro Universal(expresión de filtro en lenguaje REDATAM)Peso(uso de ponderadores -Falta implementar)Obtener resultados de consultas REDATAMEl paquete incluirá un módulo por base de datos REDATAM que permita
hacer las consultas generadas a la base correspondiente al que se acceda
comopyredatam.modulo_redatam_db. Por ahora sólo se provee un módulo
con métodos para consultar y parsear el resultado de la base de datos
REDATAM del Censo 2010 de Argentina (pyredatam.cpv2010arg). Todos
los módulos que se agreguen deberían proveer, al menos, los siguientes
métodos públicos:make_query(query)- Devuelve un html (u otra cosa, si no es
posible) con el resultado de la query realizada a la base de datos.make_arealist_query(query)- Métodos específicos para cada tipo
de consulta, que usen make_query() y luego parseen el resultado html
(o del formato que sea) a un DataFrame de pandas.Adicionalmente el módulo podría contener otros métodos útiles para
utilizar eficazmente los resultados de consultas a la base REDATAM en
cuestión. Como ejemplo, el módulopyredatam.cpv2010argincluye los
siguientes:scrape_dictionary()- Un método que devuelve un diccionario
jerárquico ordenado (collections.OrderedDict) de entidades, sus
variables y las categorías de las variables; una lista de las
entidades que se utilizan para agregar geográficamente la
información, y una lista de las entidades que contienen variables con
data (no usadas para agregar la base de datos geográficamente, sino
con la data que es realmente el objetivo de la encuesta o censo).get_dictionary()- Un método que devuelve el mismo diccionario
(sin las listas de entidades geográficas y no geográficas) pero, en
lugar de scrapearlo, lo toma de un.jsonde la carpetapyredatam/data.get_ids()- Un método que devuelve un diccionario con los ids de
dos entidades geográficas (“PROV” y “DPTO”) y su descripción, tomado
también de un.jsonde la carpetapyredatam/data.