Extrakce informací z velkého množství dat z Twitteru
Skvělá práce s rozdělením souboru na chunky v předchozím cvičení! Teď už víš, jak si poradit se situacemi, kdy potřebuješ zpracovat velmi velký soubor – a to je opravdu užitečná dovednost!
Je skvělé umět zpracovat soubor po menších, lépe zvládnutelných částech, ale znovu a znovu psát stejný kód pro stejnou úlohu může být dost únavné. V tomto cvičení svůj kód zefektivníš tak, aby byl znovupoužitelný – zapouzdříš ho z předchozího cvičení do definice funkce.
Balíček pandas je importován jako pd a soubor 'tweets.csv' je k dispozici v tvém aktuálním pracovním adresáři.
Toto cvičení je součástí kurzu
Python Toolbox
Pokyny k cvičení
- Definuj funkci
count_entries()se 3 parametry. První parametr jecsv_filepro název souboru, druhý jec_sizepro velikost chunku a třetí jecolnamepro název sloupce. - Iteruj přes soubor
csv_filepomocí cyklufor. Jako proměnnou cyklu použijchunka iteruj přes volání funkcepd.read_csv(), přičemž předejc_sizejako hodnotuchunksize. - Ve vnitřním cyklu iteruj pomocí cyklu
forpřes sloupec daný proměnnoucolnamev objektuchunk. Jako proměnnou cyklu použijentry. - Zavolej funkci
count_entries()a předej jí název souboru'tweets.csv', velikost chunku10a název sloupce'lang'. Výsledek volání přiřaď do proměnnéresult_counts.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Define count_entries()
def ____():
"""Return a dictionary with counts of
occurrences as value for each key."""
# Initialize an empty dictionary: counts_dict
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
# Return counts_dict
return counts_dict
# Call count_entries(): result_counts
result_counts = ____
# Print result_counts
print(result_counts)