Processamento de dados em partes (1)
Às vezes, as fontes de dados podem ser tão grandes que o armazenamento de todo o conjunto de dados na memória consome recursos demais. Neste exercício, você processará as primeiras 1.000 linhas de um arquivo, linha por linha, para criar um dicionário de quantas vezes cada país aparece em uma coluna do conjunto de dados.
Use o arquivo csv 'world_dev_ind.csv'
que está no diretório atual. Para começar, você precisa abrir uma conexão com esse arquivo usando o que é conhecido como gerenciador de contexto. Por exemplo, o comando with open('datacamp.csv') as datacamp
vincula o arquivo csv 'datacamp.csv'
como datacamp
no gerenciador de contexto. Aqui, a instrução with
é o gerenciador de contexto e sua finalidade é garantir que os recursos sejam alocados de forma eficiente ao abrir uma conexão com um arquivo.
Se você quiser saber mais sobre gerenciadores de contexto, consulte o curso do DataCamp sobre Importação de dados em Python.
Este exercício faz parte do curso
Caixa de ferramentas Python
Instruções de exercício
- Use
open()
para associar o arquivo csv'world_dev_ind.csv'
comofile
no gerenciador de contexto. - Complete o loop
for
de modo que ele itere 1.000 vezes para executar o corpo do loop e processar somente as primeiras 1.000 linhas de dados do arquivo.
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
# 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)