Proyecto Unidad 3: Movilidad y Cuarentena
Al final del proyecto, tu programa deberá de contar con un DataFrame que luzca como el siguiente:
Estado | Fecha | Confirmados | Negativos | Defunciones | Sospechosos | Tiendas y ocio | Supermercados y farmacias | Parques | Estaciones de transporte | Oficinas | Hogares | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | AGUASCALIENTES | 2020-02-15 | 0 | 1 | 0 | 1 | 7 | 6 | 6 | -14 | 4 | -2 |
2 | AGUASCALIENTES | 2020-02-16 | 0 | 0 | 0 | 0 | 9 | 7 | 5 | 1 | 1 | -1 |
3 | AGUASCALIENTES | 2020-02-17 | 0 | 1 | 0 | 2 | 0 | -3 | 3 | -4 | 10 | -2 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ||
4681 | ZACATECAS | 2020-07-01 | 45 | 49 | 3 | 70 | -30 | -5 | -33 | -32 | -30 | 10 |
4682 | ZACATECAS | 2020-07-02 | 46 | 58 | 6 | 77 | -31 | -5 | -33 | -34 | -30 | 11 |
4683 | ZACATECAS | 2020-07-03 | 49 | 38 | 82 | 3 | -35 | -8 | -33 | -37 | -24 | 12 |
Código Inicial
Descarga los archivos necesarios para comenzar este proyecto.
Descargar archivosInspiración
En la actual pandemia por COVID-19, una de las estrategias que mayor uso han tenido en todo el mundo han sido las restricciones de movilidad. En muchos países de los diferentes continentes se han tomado estrategias para mitigar la propagación del virus a través de limitar e incluso prohibir el acceso a las personas a diversos sitios o hasta cerrar establecimientos. Estas estrategias también fueron ocupadas en nuestro país, de forma que se esperaba que su aplicación pudiera reducir el impacto del nuevo coronavirus en la sociedad mexicana.
Para poder indagar más en los verdaderos impactos y resultados de tomar esta estrategia, es necesario contar con datos que relaten la verdad sobre la situación. Para ello ocuparemos dos fuentes de datos que nos serán de utilidad: datos de movilidad de Google y también los datos públicos del Gobierno de México.
Ambos cuentan con datos que se puede relacionar y obtener información al respecto del impacto de la movilidad sobre la transmisión de la pandemia en las diferentes regiones de nuestro país. Sin embargo, para poder obtener esa información es necesario juntar ambos conjuntos de datos, ya que esto facilita de forma considerable el poder realizar gráficos u otro tipo de comparaciones.
Proyecto
En este proyecto desarrollarás un código que lea los datos de movilidad de Google y los junte en un único DataFrame con los datos de la pandemia en México.
Para esto tu programa deberá de leer los archivos .csv
, transformará y juntará todos los datos en un único DataFrame, el cual deberá de contener
toda la información correspondiente con la movilidad de cada uno de los estados en nuestro país, así como a nivel nacional, junto con el comportamiento epidemiológico
(i.e. casos confirmados, negativos y defunciones) de cada uno de ellos.
Una vez que hayas relacionado todos los datos de movilidad con sus respectivos índices epidemiológicos, tendrás un DataFrame con toda la información acerca del impacto de las restricciones de movilidad en nuestro país.
Ayudas
En la carpeta comprimida (.zip) que descargaste al principio de esta página encontrarás los códigos para comenzar con el proyecto. Esta carpeta
contiene un script y cuatro archivos .csv
con los que realizarás tu proyecto. En esta ocasión no hay Ayudas.py
ya que no requieres funciones extra para lograr este proyecto.
GoogleMobility.csv
Este archivo contiene los datos de movilidad ofrecidos por la compañía Google LLC de Estados Unidos de América. Contiene las siguientes columnas de datos:
country_region_code
que es un código de dos letras, único para cada país.country_region
el nombre del país (en inglés).sub_region_1
nombre del estado.sub_region_2
nombre de la ciudad (si aplica).metro_area
sección del metro de la región (si aplica).iso_3166_2_code
código de la región en norma ISO (si aplica).census_fips_code
código FIPS de la región (si aplica).date
fecha del registro.retail_and_recreation_percent_change_from_baseline
muestra los cambios de tendencia en visitas a lugares como restaurantes, centros comerciales, museos, librerías, cines, entre otras tiendas y lugares de ocio.grocery_and_pharmacy_percent_change_from_baseline
muestra los cambios de tendencia en visitas a supermercados, almacenes de comida, farmacias, mercados, entre otros lugares relacionados con alimentos.parks_percent_change_from_baseline
muestra los cambios de tendencia en visitas a parques, puertos, plazas, playas y otros lugares de acceso público.transit_stations_percent_change_from_baseline
muestra los cambios de tendencia en visitas a estaciones de transporte público como autobuses, metro, tren entre otras.workplaces_percent_change_from_baseline
muestra los cambios de tendencia en visitas a lugares de trabajo como oficinas, centros de convenciones y demás.residential_percent_change_from_baseline
muestra los cambios de tendencia en permanencia de la población en zonas habitacionales.
Y luce algo similar a lo siguiente:
country_region_code | country_region | sub_region_1 | sub_region_2 | metro_area | iso_3166_2_code | census_fips_code | date | retail_and_recreation_percent_change_from_baseline | grocery_and_pharmacy_percent_change_from_baseline | parks_percent_change_from_baseline | transit_stations_percent_change_from_baseline | workplaces_percent_change_from_baseline | residential_percent_change_from_baseline |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
MX | Mexico | 08/03/2020 | 3 | 3 | 10 | 4 | 3 | 0 | |||||
MX | Mexico | 09/03/2020 | -11 | -6 | -8 | -17 | -16 | 7 | |||||
MX | Mexico | 10/03/2020 | -2 | 0 | 2 | 3 | 9 | -2 | |||||
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | |
MX | Mexico | Aguascalientes | MX-AGU | 26/02/2020 | -7 | -5 | 1 | -4 | 10 | -1 | |||
MX | Mexico | Aguascalientes | MX-AGU | 27/02/2020 | 0 | 0 | 9 | 0 | 10 | -2 | |||
MX | Mexico | Aguascalientes | MX-AGU | 28/02/2020 | 9 | 10 | 18 | -2 | 2 | -2 |
Como podrás observar en la tabla de arriba, el código para México es MX. Igualmente es importante ver que, en las primeras tres filas no hay especificada un sub-region (estado), lo cual hace referencia al país completo, mientras que en las demás se especifica el estado al que pertencen los datos.
Confirmados.csv
Este archivo contiene los datos del Gobierno de México de casos confirmados para cada estado del país. Este archivo tiene forma de matriz, donde las filas son los estados y las columnas los días. Luce algo similar a lo siguiente:
cve_ent | poblacion | nombre | 25/05/2020 | 26/05/2020 | 27/05/2020 |
---|---|---|---|---|---|
1 | 1434635 | AGUSCALIENTES | 39 | 39 | 36 |
2 | 3634868 | BAJA CALIFORNIA | 136 | 134 | 126 |
3 | 804708 | BAJA CALIFORNIA SUR | 16 | 14 | 22 |
En esta tabla podrás notar que vienen las columnas cve_ent
y poblacion
,
además de la columna nombre
, de ahí en adelante (hacia la derecha) las columnas se convierten en las fechas.
Si nos centramos en la primera fila podemos interpretar que el código de la entidad AGUASCALIENTES es 1, y que su población es
de casi millón y medio de personas. Si seguimos en esa fila podremos notar que para la fecha del 25/05/2020 se registraron 39 nuevos casos
confirmados, para el 26/05/2020 fueron 39 los nuevos casos registrados, y así sucesivamente.
Misma estrategia podemos seguir para los demás estados como BAJA CALIFORNIA y BAJA CALIFORNIA SUR y los demás. De forma que podemos obtener para cada día y por cada estado el número de contagios confirmados.
Sin embargo habrás notado que la estructura es diferente a como están los datos de Google mostrados anteriormente. Los de Google poseen una fila por fecha para cada estado, mientras que los de la tabla de arriba es una fila para cada estado y cada fecha es una columna. Esto es un problema, ya que no podemos juntar los datos si tienen estructuras diferentes.
En ciencia de datos (data science) es usual el uso de las tablas de datos como la que presenta Google, mientras que la forma matricial utilizada por el Gobierno de México es poco útil puesto que es difícil trabajar las selecciones y sub-selecciones de los datos, así como la unión de los mismos (como es nuestro caso).
Sin embargo, es posible transformar los datos del Gobierno de México de forma que podamos crear una tabla de datos que luzca de forma similar a como lo están los datos de Google, para que posteriormente se puedan juntar y trabajar en una única tabla.
Negativos.csv
La estructura de este archivo es muy similar a la que posee Confirmados.csv
solo que indica el número de pruebas negativas por entidad.
Defunciones.csv
Similar a Confirmados.csv
y Negativos.csv
, este acrchivo indica el número de defunciones por entidad federativa.
Sospechosos.csv
Similar a Confirmados.csv
, Negativos.csv
y Sospechosos
este acrchivo indica el número de sospechosos por entidad federativa.
MovilidadCuarentena.py
Este será tu código principal. Por ahora está vacío, te tocará implementarlo para completar el proyecto.
Especificación
Para lograr este proyecto deberás de completar los siguientes pasos:
- Leer los cuatro archivos
.csv
como DataFrames. - Seleccionar las columnas y filas que buscamos ocupar de cada DataFrame.
- Para los datos del Gobierno de México vas a tener que transformarlos o crear un nuevo DataFrame donde tengan la estructura de una tabla (i.e. una fila para cada fecha de cada estado).
- Renombrar las columnas de los DataFrames para su mejor entendimiento.
- Juntar todos los DataFrames en un único DataFrame con toda la información.
Considera que estos pasos no están especificados en orden de ejecución, por lo que puedes llevar a cabo uno antes o después del otro.
Walkthrough
Resultados esperados
Al ejecutar tu programa, al final del mismo debe de haber un único DataFrame que tenga las siguientes columnas:
Estado
que contenga el nombre del estado al que corresponden los datos de la fila.Fecha
la fecha a la que corresponden los datos de la fila.Confirmados
número de casos confirmados en la fecha y estado indicados en la fila.Negativos
número de pruebas negativas en la fecha y estado indicados en la fila.Defunciones
defunciones registradas en la fecha y estado indicados en la fila.Tiendas y ocio
cambios de tendencia en tiendas y ocio en la fecha y estado indicados.Supermercados y farmacias
cambios de tendencia en visitas a farmacias y supermercados en la fecha y estado indicados.Parques
cambios de tendencia en parques y zonas públicas en la fecha y estado indicados.Estaciones de transporte
cambios de tendencia en estaciones de transporte en la fecha y estado indicados.Oficinas
cambios de tendencia de la permanencia en oficinas durante la fecha y en el estado indicados.Hogares
cambios de tendencia en la estadía de la gente en sus hogares durante la fecha y el estado indicados.
Tu código también derberá ser capaz de exportar ese DataFrame como un nuevo archivo .csv
. Cuando lo logres,
habrás terminado este proyecto y tendrás lista una parte del material del siguiente.
Solución al proyecto
Archivos con la solución al proyecto Movilidad y Cuarentena.
Descargar archivos