Abrir un archivo privado
El Ayuntamiento quiere ver la tendencia general y le ha pedido a Sam que sume todas las solicitudes desde principios de 2019. Para hacerlo, Sam tiene que leer los CSV diarios del bucket 'gid-requests' y concatenarlos. Sin embargo, los archivos de gid-requests son privados. Ella puede acceder a ellos con su clave, pero el resto del mundo no.
En este ejercicio, ayudarás a Sam a ver el panorama completo leyendo estos archivos privados en pandas y concatenándolos en un único DataFrame.
Ella ya ha inicializado el cliente S3 de boto3 y lo ha asignado a la variable s3. También ha listado todos los objetos de gid-requests en la variable response.
Este ejercicio forma parte del curso
Introducción a AWS Boto en Python
Instrucciones del ejercicio
- Para cada archivo en
response, carga el objeto desde S3. - Carga el
StreamingBodydel objeto enpandasy añádelo adf_list. - Concatena todos los DataFrames con
pandas. - Previsualiza el DataFrame resultante.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
df_list = [ ]
for file in response['Contents']:
# For each file in response load the object from S3
obj = s3.____(____='gid-requests', ____=file['Key'])
# Load the object's StreamingBody with pandas
obj_df = pd.read_csv(obj['____'])
# Append the resulting DataFrame to list
df_list.append(obj_df)
# Concat all the DataFrames with pandas
df = pd.concat(df_list)
# Preview the resulting DataFrame
df.head()