{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Uso de la API del Covid19 con Pandas"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"En esta práctica, vamos a usar la API [COVID-19](https://api.covid19api.com/countries), desarrollada por Kyle Redelinghuys y basada en [los datos](https://github.com/CSSEGISandData/COVID-19) que proporciona la [Universidad Johns Hopkins](https://systems.jhu.edu/research/public-health/ncov/)."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Instalación librerías"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Para empezar, tenemos que **instalar la librería necesaria** para proyectar los datos que obtengamos sobre la incidencia de la COVID-19. Para ello, usamos el comando *pip install pandas*. Para especificar que lo que estamos haciendo es ejecutar un comando bash, ponemos un *!* al inicio de la línea."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Requirement already satisfied: pandas in /usr/local/lib/python3.8/dist-packages (1.3.1)\n",
"Requirement already satisfied: pytz>=2017.3 in /usr/local/lib/python3.8/dist-packages (from pandas) (2020.4)\n",
"Requirement already satisfied: python-dateutil>=2.7.3 in /usr/local/lib/python3.8/dist-packages (from pandas) (2.8.1)\n",
"Requirement already satisfied: numpy>=1.17.3 in /usr/local/lib/python3.8/dist-packages (from pandas) (1.21.1)\n",
"Requirement already satisfied: six>=1.5 in /usr/lib/python3/dist-packages (from python-dateutil>=2.7.3->pandas) (1.14.0)\n"
]
}
],
"source": [
"!pip install pandas"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Configuración de Pandas "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Una vez instalada, tenemos que **importarla al proyecto** que estamos realizando. Para ello, usamos la función *import*, e importamos la librería como *pd*, de forma abreviada, tal y como sigue a continuación."
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Crear variable"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Ya está instalada la librería *Pandas* y la hemos importado. Ahora ya podemos empezar a crear las variables necesarias para, posteriormente, realizar los gráficos con los datos de la API. Lo primero será **definir la variable** *url*, que será la que le diga a Python el origen de los datos. "
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"url = 'https://api.covid19api.com/countries'"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Crear Dataframe "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Una vez tenemos el enlace donde se encuentran los datos, podemos empezar a mostrarlos. Lo primero será **crear un *dataframe***, una tabla con filas y columnas en la que aparecerán los datos. Para ello, usamos la función de *Pandas* que lee el formato .json, en el que están los datos de la API: *pd.read_json(url)*. Al poner (url), le estamos indicando a *Pandas* cuáles son los datos que tiene que leer."
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"df = pd.read_json(url)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Ejecutamos el df** para visualizar que todo está correcto."
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
Country
\n",
"
Slug
\n",
"
ISO2
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
Gambia
\n",
"
gambia
\n",
"
GM
\n",
"
\n",
"
\n",
"
1
\n",
"
Paraguay
\n",
"
paraguay
\n",
"
PY
\n",
"
\n",
"
\n",
"
2
\n",
"
Trinidad and Tobago
\n",
"
trinidad-and-tobago
\n",
"
TT
\n",
"
\n",
"
\n",
"
3
\n",
"
Austria
\n",
"
austria
\n",
"
AT
\n",
"
\n",
"
\n",
"
4
\n",
"
Sao Tome and Principe
\n",
"
sao-tome-and-principe
\n",
"
ST
\n",
"
\n",
"
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
\n",
"
\n",
"
243
\n",
"
Cape Verde
\n",
"
cape-verde
\n",
"
CV
\n",
"
\n",
"
\n",
"
244
\n",
"
Israel
\n",
"
israel
\n",
"
IL
\n",
"
\n",
"
\n",
"
245
\n",
"
Bolivia
\n",
"
bolivia
\n",
"
BO
\n",
"
\n",
"
\n",
"
246
\n",
"
Latvia
\n",
"
latvia
\n",
"
LV
\n",
"
\n",
"
\n",
"
247
\n",
"
Papua New Guinea
\n",
"
papua-new-guinea
\n",
"
PG
\n",
"
\n",
" \n",
"
\n",
"
248 rows × 3 columns
\n",
"
"
],
"text/plain": [
" Country Slug ISO2\n",
"0 Gambia gambia GM\n",
"1 Paraguay paraguay PY\n",
"2 Trinidad and Tobago trinidad-and-tobago TT\n",
"3 Austria austria AT\n",
"4 Sao Tome and Principe sao-tome-and-principe ST\n",
".. ... ... ...\n",
"243 Cape Verde cape-verde CV\n",
"244 Israel israel IL\n",
"245 Bolivia bolivia BO\n",
"246 Latvia latvia LV\n",
"247 Papua New Guinea papua-new-guinea PG\n",
"\n",
"[248 rows x 3 columns]"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Exploración tabla"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Como vemos, al componerse de 248 filas, solo se nos muestra un extracto, las primeras y las últimas filas. Ahora vamos a seguir explorando la tabla."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Por ejemplo, vamos a **visualizar las 6 primeras filas**. Para ello, a través de *head*, le decimos que nos muestre el dataframe con las X primeras filas, que en este caso le hemos indicado que sean 6."
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"scrolled": false
},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
Country
\n",
"
Slug
\n",
"
ISO2
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
Gambia
\n",
"
gambia
\n",
"
GM
\n",
"
\n",
"
\n",
"
1
\n",
"
Paraguay
\n",
"
paraguay
\n",
"
PY
\n",
"
\n",
"
\n",
"
2
\n",
"
Trinidad and Tobago
\n",
"
trinidad-and-tobago
\n",
"
TT
\n",
"
\n",
"
\n",
"
3
\n",
"
Austria
\n",
"
austria
\n",
"
AT
\n",
"
\n",
"
\n",
"
4
\n",
"
Sao Tome and Principe
\n",
"
sao-tome-and-principe
\n",
"
ST
\n",
"
\n",
"
\n",
"
5
\n",
"
Timor-Leste
\n",
"
timor-leste
\n",
"
TL
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" Country Slug ISO2\n",
"0 Gambia gambia GM\n",
"1 Paraguay paraguay PY\n",
"2 Trinidad and Tobago trinidad-and-tobago TT\n",
"3 Austria austria AT\n",
"4 Sao Tome and Principe sao-tome-and-principe ST\n",
"5 Timor-Leste timor-leste TL"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.head(6)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Ahora lo mismo, pero al contrario, empezando por el final. Para decirle que queremos comenzar por el final, **en lugar de *head* usamos *tail***, con el mismo formato: entre paréntesis indicamos el X número de filas que queremos visualizar."
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
Country
\n",
"
Slug
\n",
"
ISO2
\n",
"
\n",
" \n",
" \n",
"
\n",
"
246
\n",
"
Latvia
\n",
"
latvia
\n",
"
LV
\n",
"
\n",
"
\n",
"
247
\n",
"
Papua New Guinea
\n",
"
papua-new-guinea
\n",
"
PG
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" Country Slug ISO2\n",
"246 Latvia latvia LV\n",
"247 Papua New Guinea papua-new-guinea PG"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.tail(2)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Si queremos **conocer más datos técnicos** acerca de la composición de lo que estamos usando, podemos usar *info*, que nos indicará de qué tipo son los datos por columnas, el total de filas y columnas, cuánto utiliza de memoria o si existen datos nulos."
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"RangeIndex: 248 entries, 0 to 247\n",
"Data columns (total 3 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 Country 248 non-null object\n",
" 1 Slug 248 non-null object\n",
" 2 ISO2 248 non-null object\n",
"dtypes: object(3)\n",
"memory usage: 5.9+ KB\n"
]
}
],
"source": [
"df.info()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Si queremos filtrar por columnas para ver los datos de alguna en particular, seguimos usando el df pero ahora, entre corchetes, ponemos el nombre de la columna que queramos visualizar. Por ejemplo, para ver una lista (abreviada) de países, usamos *'Country'*."
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"0 Gambia\n",
"1 Paraguay\n",
"2 Trinidad and Tobago\n",
"3 Austria\n",
"4 Sao Tome and Principe\n",
" ... \n",
"243 Cape Verde\n",
"244 Israel\n",
"245 Bolivia\n",
"246 Latvia\n",
"247 Papua New Guinea\n",
"Name: Country, Length: 248, dtype: object"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df['Country']"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Además de esto, también podemos cruzar filas con columnas. Es decir, saber qué valor tiene la fila X en la columna Y. Para ello, añadimos otro corchete a los que tenemos especificando el número de la fila. En este caso, queremos saber qué país está codificado en la fila 66 de la tabla o *dataframe*."
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'Honduras'"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df['Country'][66]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Datos de España\n",
"https://api.covid19api.com/country/spain/status/confirmed/live"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Una vez hemos testeado algunas formas de visualización del *dataframe* de los países, vamos a centrarnos en **algunos territorios concretos** para ver su evolución en tiempo real de los casos confirmados."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Para hacer esto, tenemos que **definir de nuevo el enlace desde el que *Pandas* leerá los datos y crear, a partir de este, el dataframe**. En esta ocasión, veremos los datos de España, por lo que obtenemos desde la API los casos confirmados en tiempo real para el país y los definimos. Posteriormente, los mostramos para ver que todo ha ido bien."
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
Country
\n",
"
CountryCode
\n",
"
Province
\n",
"
City
\n",
"
CityCode
\n",
"
Lat
\n",
"
Lon
\n",
"
Cases
\n",
"
Status
\n",
"
Date
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
0
\n",
"
confirmed
\n",
"
2020-01-22 00:00:00+00:00
\n",
"
\n",
"
\n",
"
1
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
0
\n",
"
confirmed
\n",
"
2020-01-23 00:00:00+00:00
\n",
"
\n",
"
\n",
"
2
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
0
\n",
"
confirmed
\n",
"
2020-01-24 00:00:00+00:00
\n",
"
\n",
"
\n",
"
3
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
0
\n",
"
confirmed
\n",
"
2020-01-25 00:00:00+00:00
\n",
"
\n",
"
\n",
"
4
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
0
\n",
"
confirmed
\n",
"
2020-01-26 00:00:00+00:00
\n",
"
\n",
"
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
\n",
"
\n",
"
816
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
11662214
\n",
"
confirmed
\n",
"
2022-04-17 00:00:00+00:00
\n",
"
\n",
"
\n",
"
817
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
11662214
\n",
"
confirmed
\n",
"
2022-04-18 00:00:00+00:00
\n",
"
\n",
"
\n",
"
818
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
11736893
\n",
"
confirmed
\n",
"
2022-04-19 00:00:00+00:00
\n",
"
\n",
"
\n",
"
819
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
11736893
\n",
"
confirmed
\n",
"
2022-04-20 00:00:00+00:00
\n",
"
\n",
"
\n",
"
820
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
11736893
\n",
"
confirmed
\n",
"
2022-04-21 00:00:00+00:00
\n",
"
\n",
" \n",
"
\n",
"
821 rows × 10 columns
\n",
"
"
],
"text/plain": [
" Country CountryCode Province City CityCode Lat Lon Cases \\\n",
"0 Spain ES 40.46 -3.75 0 \n",
"1 Spain ES 40.46 -3.75 0 \n",
"2 Spain ES 40.46 -3.75 0 \n",
"3 Spain ES 40.46 -3.75 0 \n",
"4 Spain ES 40.46 -3.75 0 \n",
".. ... ... ... ... ... ... ... ... \n",
"816 Spain ES 40.46 -3.75 11662214 \n",
"817 Spain ES 40.46 -3.75 11662214 \n",
"818 Spain ES 40.46 -3.75 11736893 \n",
"819 Spain ES 40.46 -3.75 11736893 \n",
"820 Spain ES 40.46 -3.75 11736893 \n",
"\n",
" Status Date \n",
"0 confirmed 2020-01-22 00:00:00+00:00 \n",
"1 confirmed 2020-01-23 00:00:00+00:00 \n",
"2 confirmed 2020-01-24 00:00:00+00:00 \n",
"3 confirmed 2020-01-25 00:00:00+00:00 \n",
"4 confirmed 2020-01-26 00:00:00+00:00 \n",
".. ... ... \n",
"816 confirmed 2022-04-17 00:00:00+00:00 \n",
"817 confirmed 2022-04-18 00:00:00+00:00 \n",
"818 confirmed 2022-04-19 00:00:00+00:00 \n",
"819 confirmed 2022-04-20 00:00:00+00:00 \n",
"820 confirmed 2022-04-21 00:00:00+00:00 \n",
"\n",
"[821 rows x 10 columns]"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"url_es = 'https://api.covid19api.com/country/spain/status/confirmed/live'\n",
"df_es = pd.read_json(url_es)\n",
"df_es"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Al igual que hicimos anteriormente, vamos a ver diferentes datos de la tabla. Para empezar, queremos listar las columnas existentes y saber qué datos contiene cada una. Lo hacemos **mostrando el *dataframe* de España y añadiendo *columns***. "
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"Index(['Country', 'CountryCode', 'Province', 'City', 'CityCode', 'Lat', 'Lon',\n",
" 'Cases', 'Status', 'Date'],\n",
" dtype='object')"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_es.columns"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"De la misma manera, podemos cruzar filas con las columnas para saber un dato concreto. Por ejemplo, para saber cuál es el dato que se encuentra en la primera fila, empezando por el principio, filtramos por la columna 'Date', y con .head(x) le indicamos el número que queremos."
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"0 2020-01-22 00:00:00+00:00\n",
"Name: Date, dtype: datetime64[ns, UTC]"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_es['Date'].head(1)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Además, para saber los tipos de datos contenidos en el *dataframe*, si existen datos nulos y el tamaño total de la tabla, usamos *info*."
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"RangeIndex: 821 entries, 0 to 820\n",
"Data columns (total 10 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 Country 821 non-null object \n",
" 1 CountryCode 821 non-null object \n",
" 2 Province 821 non-null object \n",
" 3 City 821 non-null object \n",
" 4 CityCode 821 non-null object \n",
" 5 Lat 821 non-null float64 \n",
" 6 Lon 821 non-null float64 \n",
" 7 Cases 821 non-null int64 \n",
" 8 Status 821 non-null object \n",
" 9 Date 821 non-null datetime64[ns, UTC]\n",
"dtypes: datetime64[ns, UTC](1), float64(2), int64(1), object(6)\n",
"memory usage: 64.3+ KB\n"
]
}
],
"source": [
"df_es.info()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Si profundizamos en cuestiones estadísticas, podemos saber, por ejemplo, datos como la media, la desviación estándar, los diferentes cuartiles y el valor mínimo y máximo, usamos *describe*."
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
Lat
\n",
"
Lon
\n",
"
Cases
\n",
"
\n",
" \n",
" \n",
"
\n",
"
count
\n",
"
8.210000e+02
\n",
"
821.00
\n",
"
8.210000e+02
\n",
"
\n",
"
\n",
"
mean
\n",
"
4.046000e+01
\n",
"
-3.75
\n",
"
3.426515e+06
\n",
"
\n",
"
\n",
"
std
\n",
"
1.421952e-14
\n",
"
0.00
\n",
"
3.312558e+06
\n",
"
\n",
"
\n",
"
min
\n",
"
4.046000e+01
\n",
"
-3.75
\n",
"
0.000000e+00
\n",
"
\n",
"
\n",
"
25%
\n",
"
4.046000e+01
\n",
"
-3.75
\n",
"
3.428130e+05
\n",
"
\n",
"
\n",
"
50%
\n",
"
4.046000e+01
\n",
"
-3.75
\n",
"
3.180212e+06
\n",
"
\n",
"
\n",
"
75%
\n",
"
4.046000e+01
\n",
"
-3.75
\n",
"
4.953930e+06
\n",
"
\n",
"
\n",
"
max
\n",
"
4.046000e+01
\n",
"
-3.75
\n",
"
1.173689e+07
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" Lat Lon Cases\n",
"count 8.210000e+02 821.00 8.210000e+02\n",
"mean 4.046000e+01 -3.75 3.426515e+06\n",
"std 1.421952e-14 0.00 3.312558e+06\n",
"min 4.046000e+01 -3.75 0.000000e+00\n",
"25% 4.046000e+01 -3.75 3.428130e+05\n",
"50% 4.046000e+01 -3.75 3.180212e+06\n",
"75% 4.046000e+01 -3.75 4.953930e+06\n",
"max 4.046000e+01 -3.75 1.173689e+07"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_es.describe()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Aquí volvemos a mostrar el *dataframe* entero, aunque aparece de forma abrevada por cuestión de espacio, sin filtrar por columna o tipo de datos."
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
Country
\n",
"
CountryCode
\n",
"
Province
\n",
"
City
\n",
"
CityCode
\n",
"
Lat
\n",
"
Lon
\n",
"
Cases
\n",
"
Status
\n",
"
Date
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
0
\n",
"
confirmed
\n",
"
2020-01-22 00:00:00+00:00
\n",
"
\n",
"
\n",
"
1
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
0
\n",
"
confirmed
\n",
"
2020-01-23 00:00:00+00:00
\n",
"
\n",
"
\n",
"
2
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
0
\n",
"
confirmed
\n",
"
2020-01-24 00:00:00+00:00
\n",
"
\n",
"
\n",
"
3
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
0
\n",
"
confirmed
\n",
"
2020-01-25 00:00:00+00:00
\n",
"
\n",
"
\n",
"
4
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
0
\n",
"
confirmed
\n",
"
2020-01-26 00:00:00+00:00
\n",
"
\n",
"
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
\n",
"
\n",
"
816
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
11662214
\n",
"
confirmed
\n",
"
2022-04-17 00:00:00+00:00
\n",
"
\n",
"
\n",
"
817
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
11662214
\n",
"
confirmed
\n",
"
2022-04-18 00:00:00+00:00
\n",
"
\n",
"
\n",
"
818
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
11736893
\n",
"
confirmed
\n",
"
2022-04-19 00:00:00+00:00
\n",
"
\n",
"
\n",
"
819
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
11736893
\n",
"
confirmed
\n",
"
2022-04-20 00:00:00+00:00
\n",
"
\n",
"
\n",
"
820
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
11736893
\n",
"
confirmed
\n",
"
2022-04-21 00:00:00+00:00
\n",
"
\n",
" \n",
"
\n",
"
821 rows × 10 columns
\n",
"
"
],
"text/plain": [
" Country CountryCode Province City CityCode Lat Lon Cases \\\n",
"0 Spain ES 40.46 -3.75 0 \n",
"1 Spain ES 40.46 -3.75 0 \n",
"2 Spain ES 40.46 -3.75 0 \n",
"3 Spain ES 40.46 -3.75 0 \n",
"4 Spain ES 40.46 -3.75 0 \n",
".. ... ... ... ... ... ... ... ... \n",
"816 Spain ES 40.46 -3.75 11662214 \n",
"817 Spain ES 40.46 -3.75 11662214 \n",
"818 Spain ES 40.46 -3.75 11736893 \n",
"819 Spain ES 40.46 -3.75 11736893 \n",
"820 Spain ES 40.46 -3.75 11736893 \n",
"\n",
" Status Date \n",
"0 confirmed 2020-01-22 00:00:00+00:00 \n",
"1 confirmed 2020-01-23 00:00:00+00:00 \n",
"2 confirmed 2020-01-24 00:00:00+00:00 \n",
"3 confirmed 2020-01-25 00:00:00+00:00 \n",
"4 confirmed 2020-01-26 00:00:00+00:00 \n",
".. ... ... \n",
"816 confirmed 2022-04-17 00:00:00+00:00 \n",
"817 confirmed 2022-04-18 00:00:00+00:00 \n",
"818 confirmed 2022-04-19 00:00:00+00:00 \n",
"819 confirmed 2022-04-20 00:00:00+00:00 \n",
"820 confirmed 2022-04-21 00:00:00+00:00 \n",
"\n",
"[821 rows x 10 columns]"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_es"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"A continuación, colocamos como referencia la fecha de los datos, para empezar a obtener una imagen general de la evolución de los datos. Para ello, fijamos con *set_index* el nombre de la columna que queremos colocar como referencia, que en este caso es la fecha (*'Date'*)."
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
Country
\n",
"
CountryCode
\n",
"
Province
\n",
"
City
\n",
"
CityCode
\n",
"
Lat
\n",
"
Lon
\n",
"
Cases
\n",
"
Status
\n",
"
\n",
"
\n",
"
Date
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
\n",
" \n",
" \n",
"
\n",
"
2020-01-22 00:00:00+00:00
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
0
\n",
"
confirmed
\n",
"
\n",
"
\n",
"
2020-01-23 00:00:00+00:00
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
0
\n",
"
confirmed
\n",
"
\n",
"
\n",
"
2020-01-24 00:00:00+00:00
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
0
\n",
"
confirmed
\n",
"
\n",
"
\n",
"
2020-01-25 00:00:00+00:00
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
0
\n",
"
confirmed
\n",
"
\n",
"
\n",
"
2020-01-26 00:00:00+00:00
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
0
\n",
"
confirmed
\n",
"
\n",
"
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
\n",
"
\n",
"
2022-04-17 00:00:00+00:00
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
11662214
\n",
"
confirmed
\n",
"
\n",
"
\n",
"
2022-04-18 00:00:00+00:00
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
11662214
\n",
"
confirmed
\n",
"
\n",
"
\n",
"
2022-04-19 00:00:00+00:00
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
11736893
\n",
"
confirmed
\n",
"
\n",
"
\n",
"
2022-04-20 00:00:00+00:00
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
11736893
\n",
"
confirmed
\n",
"
\n",
"
\n",
"
2022-04-21 00:00:00+00:00
\n",
"
Spain
\n",
"
ES
\n",
"
\n",
"
\n",
"
\n",
"
40.46
\n",
"
-3.75
\n",
"
11736893
\n",
"
confirmed
\n",
"
\n",
" \n",
"
\n",
"
821 rows × 9 columns
\n",
"
"
],
"text/plain": [
" Country CountryCode Province City CityCode Lat \\\n",
"Date \n",
"2020-01-22 00:00:00+00:00 Spain ES 40.46 \n",
"2020-01-23 00:00:00+00:00 Spain ES 40.46 \n",
"2020-01-24 00:00:00+00:00 Spain ES 40.46 \n",
"2020-01-25 00:00:00+00:00 Spain ES 40.46 \n",
"2020-01-26 00:00:00+00:00 Spain ES 40.46 \n",
"... ... ... ... ... ... ... \n",
"2022-04-17 00:00:00+00:00 Spain ES 40.46 \n",
"2022-04-18 00:00:00+00:00 Spain ES 40.46 \n",
"2022-04-19 00:00:00+00:00 Spain ES 40.46 \n",
"2022-04-20 00:00:00+00:00 Spain ES 40.46 \n",
"2022-04-21 00:00:00+00:00 Spain ES 40.46 \n",
"\n",
" Lon Cases Status \n",
"Date \n",
"2020-01-22 00:00:00+00:00 -3.75 0 confirmed \n",
"2020-01-23 00:00:00+00:00 -3.75 0 confirmed \n",
"2020-01-24 00:00:00+00:00 -3.75 0 confirmed \n",
"2020-01-25 00:00:00+00:00 -3.75 0 confirmed \n",
"2020-01-26 00:00:00+00:00 -3.75 0 confirmed \n",
"... ... ... ... \n",
"2022-04-17 00:00:00+00:00 -3.75 11662214 confirmed \n",
"2022-04-18 00:00:00+00:00 -3.75 11662214 confirmed \n",
"2022-04-19 00:00:00+00:00 -3.75 11736893 confirmed \n",
"2022-04-20 00:00:00+00:00 -3.75 11736893 confirmed \n",
"2022-04-21 00:00:00+00:00 -3.75 11736893 confirmed \n",
"\n",
"[821 rows x 9 columns]"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_es.set_index('Date')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Para ceñirnos estrictamente a los datos que queremos ver, y así dejar fuera los que son innecesarios, como el país, la latitud y la longitud o el código del país, entre corchetes especificamos la(s) columna(s) que queramos mostrar además de la de la fecha."
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"Date\n",
"2020-01-22 00:00:00+00:00 0\n",
"2020-01-23 00:00:00+00:00 0\n",
"2020-01-24 00:00:00+00:00 0\n",
"2020-01-25 00:00:00+00:00 0\n",
"2020-01-26 00:00:00+00:00 0\n",
" ... \n",
"2022-04-17 00:00:00+00:00 11662214\n",
"2022-04-18 00:00:00+00:00 11662214\n",
"2022-04-19 00:00:00+00:00 11736893\n",
"2022-04-20 00:00:00+00:00 11736893\n",
"2022-04-21 00:00:00+00:00 11736893\n",
"Name: Cases, Length: 821, dtype: int64"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_es.set_index('Date')['Cases']"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Vamos a pasar a la representación gráfica. Manteniendo lo anterior, es decir, los datos que queremos visualizar (fecha y número de casos, para ver la evolución temporal), **añadimos *plot* y le ponemos un título al gráfico, dentro de los paréntesis a partir de *plot***."
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"df_es.set_index('Date')['Cases'].plot(title=\"Casos de Covid19 en España\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Datos de Italia"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Ahora repetimos el mismo proceso que hemos hecho hasta ahora pero con otro país, pero centrándonos solo en la representación visual de los datos.En este caso se ha elegido Italia."
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"url_it = 'https://api.covid19api.com/country/italy/status/confirmed/live'\n",
"df_it = pd.read_json(url_it)\n",
"df_it.set_index('Date')['Cases'].plot(title=\"Casos de Covid19 Ben Italia\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Datos de México"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"De nuevo, escogemos un tercer país de la API y volvemos a visualizarlo a través de *plot* de su *dataframe*. Se ha elegido México."
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"url_mex = 'https://api.covid19api.com/country/mexico/status/confirmed/live'\n",
"df_mex = pd.read_json(url_mex)\n",
"df_mex.set_index('Date')['Cases'].plot(title=\"Casos de Covid19 en México\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Comparación"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Una vez que hemos visto diversos países por separados, es el momento de unir todos sus datos para poder compararlos y ver cómo han ido evolucionando sus casos confirmados de coronavirus a lo largo de un periodo temporal."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Para ello, **creamos una nueva variable por cada país que contenga solo los datos que hemos ido necesitando y trabajando anteriormente: fecha y número de casos confirmados**. "
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [],
"source": [
"casos_it = df_it.set_index('Date')['Cases']\n",
"casos_es = df_es.set_index('Date')['Cases']\n",
"casos_mex = df_mex.set_index('Date')['Cases']"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Una vez definidas estas variables, empezamos a jugar con ellas y mostrándolas, esta vez haciendo uso de la concatenación de la librería de *Pandas*."
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/html": [
"