Відкриття приватного файла
Міська рада хоче побачити загальну тенденцію й попросила Сема підсумувати всі запити з початку 2019 року. Щоб це зробити, Сему потрібно прочитати щоденні CSV з бакета 'gid-requests' і об'єднати їх. Однак файли gid-requests є приватними. Вона має доступ до них за своїм ключем, але решта світу — ні.
У цій вправі ви допоможете Сему побачити повну картину: прочитаєте ці приватні файли в pandas і об'єднаєте їх в один DataFrame!
Вона вже ініціалізувала клієнта S3 з boto3 і зберегла його в змінній s3. Вона перелічила всі об'єкти в gid-requests у змінній response.
Ця вправа є частиною курсу
Вступ до AWS Boto в Python
Інструкції до вправи
- Для кожного файла в
responseзавантажте об'єкт із S3. - Завантажте
StreamingBodyоб'єкта вpandasі додайте доdf_list. - Об'єднайте всі датафрейми за допомогою
pandas. - Перегляньте отриманий DataFrame.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
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()