Обробка даних частинами (1)
Іноді джерела даних можуть бути настільки великими, що зберігати весь набір даних у пам'яті надто ресурсоємно. У цій вправі ви обробите перші 1000 рядків файла пострічково, щоб створити словник із підрахунком, скільки разів кожна країна з'являється у відповідній колонці набору даних.
CSV‑файл 'world_dev_ind.csv' уже є у вашому поточному каталозі. Щоб почати, відкрийте з'єднання з файлом за допомогою так званого контекстного менеджера. Наприклад, команда with open('datacamp.csv') as datacamp прив'язує CSV‑файл 'datacamp.csv' як datacamp у контекстному менеджері. Тут оператор with виступає контекстним менеджером і забезпечує ефективне використання ресурсів під час відкриття з'єднання з файлом.
Якщо хочете дізнатися більше про контекстні менеджери, перегляньте курс DataCamp про імпортування даних у Python.
Ця вправа є частиною курсу
Набір інструментів Python
Інструкції до вправи
- Використайте
open(), щоб прив'язати CSV‑файл'world_dev_ind.csv'якfileу контекстному менеджері. - Доповніть цикл
for, щоб він ітерувався 1000 разів, виконав тіло циклу та обробив лише перші 1000 рядків даних файла.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Open a connection to the file
with ____ as ____:
# Skip the column names
file.readline()
# Initialize an empty dictionary: counts_dict
counts_dict = {}
# Process only the first 1000 rows
for j in ____:
# Split the current line into a list: line
line = file.readline().split(',')
# Get the value for the first column: first_col
first_col = line[0]
# If the column value is in the dict, increment its value
if first_col in counts_dict.keys():
counts_dict[first_col] += 1
# Else, add to the dict and set value to 1
else:
counts_dict[first_col] = 1
# Print the resulting dictionary
print(counts_dict)