Escrevendo um gerador para carregar dados em partes (3)
Ótimo! Você acabou de criar uma função geradora que pode ser usada para ajudá-lo a processar arquivos grandes.
Agora, vamos usar sua função geradora para processar o conjunto de dados do Banco Mundial, como você fez anteriormente. Você processará o arquivo linha por linha para criar um dicionário de quantas vezes cada país aparece em uma coluna do conjunto de dados. No entanto, para este exercício, você não processará apenas 1.000 linhas de dados, mas sim todo o conjunto de dados!
A função geradora read_large_file()
e o arquivo csv 'world_dev_ind.csv'
estão pré-carregados e prontos para você usar. Pode começar!
Este exercício faz parte do curso
Caixa de ferramentas Python
Instruções do exercício
- Associe o arquivo
'world_dev_ind.csv'
afile
no gerenciador de contexto comopen()
. - Complete o loop
for
de modo que ele itere sobre o gerador a partir da chamada deread_large_file()
para processar todas as linhas do arquivo.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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)