Открытие приватного файла
Городской совет хочет увидеть общую картину и попросил Сэм подсчитать все обращения начиная с 2019 года. Для этого Сэм нужно считать ежедневные CSV-файлы из бакета 'gid-requests' и объединить их. Однако файлы gid-requests являются приватными. У Сэм есть доступ к ним через её ключ, но другие пользователи не могут их открыть.
В этом упражнении вы поможете Сэм увидеть полную картину: загрузите приватные файлы в pandas и объедините их в один DataFrame!
Клиент S3 для boto3 уже инициализирован и записан в переменную s3. Список всех объектов в gid-requests сохранён в переменной response.
Это упражнение является частью курса
Введение в AWS Boto на Python
Инструкции к упражнению
- Для каждого файла из
responseзагрузите объект из S3. - Загрузите
StreamingBodyобъекта вpandasи добавьте результат вdf_list. - Объедините все DataFrame с помощью
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()