Pisanie generatora do wczytywania danych w częściach (3)
Świetnie! Udało ci się napisać funkcję generatora, której możesz używać do przetwarzania dużych plików.
Teraz użyj swojego generatora do przetworzenia zbioru danych Banku Światowego – tak jak robiłeś to wcześniej. Będziesz przetwarzać plik wiersz po wierszu, tworząc słownik z liczbą wystąpień każdego kraju w wybranej kolumnie zbioru danych. Tym razem jednak nie ograniczysz się do 1000 wierszy – przetworzysz cały zbiór danych!
Funkcja generatora read_large_file() oraz plik CSV 'world_dev_ind.csv' są już wczytane i gotowe do użycia. Do dzieła!
To ćwiczenie jest częścią kursu
Zestaw narzędzi Pythona
Instrukcje do ćwiczenia
- Powiąż plik
'world_dev_ind.csv'ze zmiennąfilew menedżerze kontekstu za pomocąopen(). - Uzupełnij pętlę
fortak, aby iterowała po generatorze zwróconym przez wywołanieread_large_file()i przetwarzała wszystkie wiersze pliku.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Initialize an empty dictionary: counts_dict
counts_dict = {}
# Open a connection to the file
with ____ as ____:
# Iterate over the generator from read_large_file()
for line in ____:
row = line.split(',')
first_col = row[0]
if first_col in counts_dict.keys():
counts_dict[first_col] += 1
else:
counts_dict[first_col] = 1
# Print
print(counts_dict)