Como analisar ficheiros CSV em Python

Comentários: 0

A análise de dados é definida como uma coleta e processamento automático de informações, que é frequentemente usada no caso de arquivos CSV. Aqui, analisar significa fatiar arquivos CSV em linhas, colunas e valores. Ao fazê-lo, os dados podem ser analisados, filtrados e extraídos para trabalho posterior sem esforço. Neste artigo, vamos explicar como utilizar Python para ler ficheiros CSV. Além disso, mostraremos como analisar dados de um arquivo CSV em Python.

O que é um arquivo CSV?

CSV, ou (Comma Separated Values), é um formato de arquivo que salva dados de uma forma que tem valores separados por vírgulas e novas mudanças de linha. Por causa disso, o formato CSV pode ser usado em uma variedade de contextos, como criar ou modificar dados no Excel.

Um dos principais pontos fortes dos ficheiros CSV é a facilidade de acesso e partilha de informações. A sua singularidade permite que o ficheiro seja aberto e processado independentemente do software utilizado. Isto torna conveniente a exportação desses dados sob a forma de uma folha de cálculo ou de uma base de dados.

Agora, vamos mostrar como abrir e ler CSV em Python no bloco a seguir.

Parando arquivos CSV com Python

O Python tem uma biblioteca CSV embutida que é capaz de ler e escrever dados com facilidade. A instalação de bibliotecas externas não é necessária, o que torna a análise de conteúdo e a abertura de arquivos uma tarefa fácil.

Os seguintes segmentos de código mostram como abrir e imprimir um ficheiro СSV chamado university_records em Python. Ele usa o modo de leitura para abrir o arquivo e, em seguida, lê o arquivo CSV e, finalmente, imprime os dados com um loop for.


import csv

with open('university_records.csv', 'r') as csv_file:
    reader = csv.reader(csv_file)

    for row in reader:
        print(row)

Escrevendo arquivos CSV com Python

Para este propósito, vamos empregar o módulo CSV para escrever dados. Existem métodos úteis para o ajudar a escrever informação no módulo CSV:

  • .writer() - serve como uma ferramenta de criação de ficheiros;
  • .writerow() - armazena dados em uma linha.

Os métodos do módulo são ilustrados de forma abrangente no código abaixo:


import csv

row = ['David', 'MCE', '3', '7.8']

row1 = ['Monika', 'PIE', '3', '9.1']

row2 = ['Raymond', 'ECE', '2', '8.5']

with open('university_records.csv', 'a') as csv_file:
    writer = csv.writer(csv_file)

    writer.writerow(row)

    writer.writerow(row1)

    writer.writerow(row2)

Analisando CSV com a biblioteca Pandas

Usar python para analisar ficheiros CSV é crucial hoje em dia: desde folhas de cálculo para finanças a bases de dados colossais para machine learning. Às vezes, trabalhar com esses arquivos é uma dor de cabeça, especialmente quando você precisa de mais recursos do que o Python fornece fora da caixa. Nesses casos, a biblioteca Pandas pode ser útil.

A capacidade total de escrever dados com DataFrame é demonstrada abaixo. DataFrame é uma das principais estruturas de dados na biblioteca Pandas e é usada para trabalhar com dados tabulares.


import pandas as pd

data = {"Name": ["David", "Monika", "Raymond"], 
        "Age": [30, 25, 40], 
        "City": ["Kyiv", "Lviv", "Odesa"]
} 

df = pd.DataFrame(data) 

file_path = "data.csv" 
df.to_csv(file_path, index=False, encoding="utf-8")



Principais caraterísticas da biblioteca Pandas

Para Python, a biblioteca Pandas é considerada uma das mais eficazes para analisar CSV e aqui estão as razões pelas quais ela é tão poderosa e conveniente:

  1. Carregamento simples de arquivos. Se um conjunto de dados vem de várias origens e tem inconsistência em sua formatação, então Pandas provando que é supremo é mágico, pois analisa o arquivo automaticamente eliminando o esforço manual.
  2. Escalabilidade. Quando as bibliotecas padrão do Python tentam analisar arquivos CSV de grande volume, elas geralmente ficam muito atrasadas, mas com o Pandas, a otimização é feita, pois é superada em um bom desempenho com arquivos maiores. Além disso, a fragmentação do upload do arquivo permite a prevenção de sobrecarga de memória.
  3. Lidando com vários processos. Valores faltantes, formatos errados e duplicatas são encontrados principalmente em arquivos CSV. Ainda bem que o Pandas prova mais uma vez essa mágica com ferramentas integradas, como dados ausentes e substituição de tipos, limpeza de caracteres e reestruturação de informações para análise avançada.

Estes recursos mostram que a biblioteca é melhor para analisar rapidamente arquivos CSV, pois outras ferramentas são limitadas em comparação. Ao mesmo tempo, é capaz de processar grandes quantidades de dados, tornando-a extremamente útil no mundo da informação.

Leitura de arquivos CSV com o Pandas

Antes de poder usar o documento CSV, o primeiro passo é carregá-lo.


import pandas as pd

df = pd.read_csv("data.csv")

Ao lidar com conjuntos de dados extensos, as ferramentas Pandas são apropriadas para uso. Vamos explorar como um script Python pode analisar um arquivo CSV.


df.head() # Mostra as primeiras 5 linhas
df.tail(10) # Mostra as últimas 10 linhas
df.info() # Emite uma lista de colunas, tipos de dados e o número de valores preenchidos

Para selecionar uma ou várias colunas, executar:


df["Name"] # Obter a coluna "Name"


df[["Name", "Age"]] # Extrair apenas "Name" e "Age"

Escrever ficheiros CSV com o Pandas

Vamos agora ver como inserir, modificar e remover linhas específicas.

Inserção de uma nova linha:


# Carregar o ficheiro CSV
df = pd.read_csv(file_path) 

# Adicionar uma nova linha
new_row = pd.DataFrame([{"Name": "Denys", "Age": 35, "City": "Kharkiv"}]) df = pd.concat([df, new_row], ignore_index=True) 


# Guardar
df.to_csv(file_path, index=False, encoding="utf-8")

Modificar uma linha específica:


df = pd.read_csv(file_path) 

# Alterar a idade de Ivan
df.loc[df["Name"] == "Ivan", "Age"] = 26 

df.to_csv(file_path, index=False, encoding="utf-8")

Remoção de uma linha:


df = pd.read_csv(file_path) 

# Remover a linha onde Name == "Mykhailo" 
df = df[df["Name"] != "Mykhailo"] 

df.to_csv(file_path, index=False, encoding="utf-8")

Conclusão

Em resumo, neste artigo mostrámos como abrir e ler um ficheiro CSV em Python. Mas sempre que um utilizador necessita de maior precisão e de ferramentas de interpretação poderosas, o Pandas funciona na perfeição. Automatizando processos repetitivos, permitindo o tratamento de ficheiros massivos e poupando tempo, esta biblioteca é muito eficaz. Assim, pode concluir-se que, para funções básicas, a biblioteca CSV padrão fornece os requisitos, enquanto a Pandas é feita para lidar com dados de informação extensa.

Comentários:

0 Comentários