開始使用免費開始

開啟私有檔案

市議會想了解長期趨勢,要求 Sam 統計自 2019 年初以來的所有請求。為了做到這點,Sam 需要從 'gid-requests' bucket 讀取每日的 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()
編輯並執行程式碼