處理大量的 Twitter 資料
有時候,我們需要處理的資料量會大到超過電腦記憶體可承受的範圍。這是資料科學家常見的問題。解法之一是不要一次把整個資料來源載入,而是「分塊」逐一處理。
在這個練習中,你就會這麼做。你會用和前一門課程的「Bringing it all together」練習處理 'tweets.csv' 相同的方式來處理一個大型的 Twitter CSV 檔,但這次會一次處理 10 筆資料的分塊。
如果你想學習如何存取 Twitter 資料,方便在自己的系統上操作,請參考 DataCamp「Importing Data in Python」課程的第 2 部分。
已經將 pandas 套件匯入為 pd,而且檔案 'tweets.csv' 已放在你目前的目錄中,供你使用。
請注意,這是來自 Twitter 的真實資料,因此可能包含不雅字詞或其他具攻擊性的內容(本練習以及之後任何同樣使用真實 Twitter 資料的練習皆然)。
本練習屬於課程
Python 工具箱
練習說明
- 初始化一個空字典
counts_dict,用來儲存處理 Twitter 資料的結果。 - 使用
for迴圈走訪'tweets.csv'檔案。以chunk作為迴圈變數,並針對呼叫pd.read_csv()的結果進行迭代,將chunksize設為 10。 - 在內層迴圈中,使用
for迴圈走訪chunk中的'lang'欄位。以entry作為迴圈變數。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Initialize an empty dictionary: counts_dict
# Iterate over the file chunk by chunk
for ____ in ____:
# Iterate over the column in DataFrame
for ____ in ____:
if entry in counts_dict.keys():
counts_dict[entry] += 1
else:
counts_dict[entry] = 1
# Print the populated dictionary
print(counts_dict)