Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Quantidade de dados

Ola, o instrutor comentou na aula que existem diferentes formas de lidar com a leitura dos dados.. dependendo da quantidade de dados. Gostaria de saber se ao longo desse curso irei aprender essas outras formas?

1 resposta
solução!

Bom dia, Victor! Tudo bem com você?

O foco deste curso, de fato, não é a leitura de arquivos, então, você não verá outras formas de leitura. Por isso, o instrutor mencionou apenas superficialmente que, ao lidarmos com uma quantidade muito grande de dados, a forma de leitura e salvamento de arquivos CSV pode precisar de uma abordagem diferente, envolvendo bibliotecas externas. Mas, vamos entender melhor, acompanhe comigo.

Por exemplo, enquanto o módulo csv pode ser suficiente para conjuntos de dados menores, bibliotecas como pandas ou dask são mais adequadas para lidar com grandes volumes de dados, ao oferecerem funcionalidades mais avançadas para manipulação de dados. Com a pandas por exemplo, você pode carregar apenas uma parte do arquivo na memória, processar esses dados e, em seguida, carregar outra parte, o que é muito útil quando se trabalha com dados que não cabem na memória de uma só vez. A título de curiosidade, deixo abaixo algumas formas de trabalhar com arquivo csv usando a biblioteca pandas:

Para arquivos menores:

Quando o arquivo é pequeno e cabe inteiro na memória, o pandas pode ser usado de forma simples para leitura, manipulação e escrita. Exemplo:

import pandas as pd

# Leitura de um arquivo CSV
df = pd.read_csv('arquivo_pequeno.csv')

# Exemplo de manipulação: adicionar uma nova coluna
df['nova_coluna'] = df['coluna_existente'] * 2

# Salvar o DataFrame modificado em um novo arquivo CSV
df.to_csv('arquivo_modificado.csv', index=False)

print("Arquivo processado com sucesso!")

Para arquivos grandes, maiores de 1 milhão de linhas por exemplo

Quando o arquivo é muito grande e não cabe inteiro na memória, podemos processar os dados em partes (chunks). Exemplo:

import pandas as pd

# Configurando o tamanho dos chunks (número de linhas por vez)
chunksize = 100000

# Criando um iterador para ler o arquivo em partes
for chunk in pd.read_csv('arquivo_grande.csv', chunksize=chunksize):
    # Processar o chunk: por exemplo, criar uma nova coluna
    chunk['nova_coluna'] = chunk['coluna_existente'] * 2
    
    # Salvar o chunk processado em um novo arquivo (modo de anexar)
    chunk.to_csv('arquivo_processado.csv', mode='a', index=False, header=False)

print("Processamento concluído!")
Ícone de sugestão Para saber mais:

A estratégia de leitura e escrita de arquivos no dia a dia varia bastante, dependendo do tamanho da base de dados e dos objetivos do projeto. Em alguns casos, será necessário trabalhar com lotes de carregamento utilizando chunks; em outros, a manipulação direta de todo o arquivo será suficiente.

Como recomendação, para você dominar conceitos de exploração e manipulação de dados, sugiro a formação Python para Data Science. Os cursos dessa formação irão abordar ferramentas como pandas e práticas para lidar com arquivos de diferentes formatos.

Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Fico à disposição. Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado