开始使用免费开始使用

打开私有文件

市议会想了解长期趋势,并要求 Sam 统计自 2019 年初以来的所有请求。为此,Sam 需要从 'gid-requests' 存储桶读取每日 CSV 并将其拼接起来。不过,gid-requests 文件是私有的。她可以通过自己的密钥访问,但外部无法访问。

在本练习中,您将帮助 Sam 读取这些私有文件到 pandas,并将它们拼接成一个 DataFrame,便于把握全局趋势!

她已经初始化了 boto3 的 S3 客户端并将其赋给变量 s3。她也已将 gid-requests 中的所有对象列出到变量 response 中。

本练习是课程的一部分

Python 中的 AWS Boto 入门

查看课程

练习说明

  • 对于 response 中的每个文件,从 S3 加载该对象。
  • 将对象的 StreamingBody 读入 pandas,并追加到 df_list
  • 使用 pandas 将所有 DataFrame 拼接起来。
  • 预览最终得到的 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()
编辑并运行代码