Manipulação de Planilhas no Excel usando Python.

Manipulação de Planilhas no Excel usando Python.

Na engenharia, muitas das vezes nos deparamos com uma  grande quantidade de dados que precisa ser filtrada, a fim de obter um resultado em específico. Durante esse post iremos explorar uma das maneiras que podem ser usados a fim de filtrar ou modificar dados de uma amostra utilizando a bibioteca panda do python.

Manipular planilhas do Excel usando pandas é uma tarefa bastante comum e eficiente, especialmente para análise e processamento de dados. A seguir, vou apresentar alguns exemplos básicos e intermediários de como realizar diferentes operações com pandas em arquivos Excel.

Instalação

Primeiro, certifique-se de ter pandas e openpyxl instalados. Para fazer isso, basta escrever o seguinte comando no terminal do IDE que você está utilizando:

bash

pip install pandas openpyxl

Leitura de Planilhas

Leitura de uma única planilha

Antes de ler a planilha que você deseja analisar, verfique se a planilha em questão está localizada na MESMA pasta que o código em  python.

python

import pandas as pd

# Leitura da planilha especificada

df = pd.read_excel(‘caminho_para_seu_arquivo.xlsx’, sheet_name=’Nome_da_Planilha’)

# Leitura da primeira planilha do arquivo

df = pd.read_excel(‘caminho_para_seu_arquivo.xlsx’)

Leitura de todas as planilhas

python

# Leitura de todas as planilhas

all_sheets = pd.read_excel(‘caminho_para_seu_arquivo.xlsx’, sheet_name=None)

# Acessando uma planilha específica

df_specific = all_sheets[‘Nome_da_Planilha’]

 

Criação de um DataFrame

Um DataFrame é uma estrutura de dados bidimensional, semelhante a uma tabela, que é amplamente utilizada na biblioteca pandas do Python para armazenar e manipular dados tabulares. Um DataFrame pode ser considerado como uma coleção de séries pandas (equivalentes a colunas de dados) alinhadas ao longo de um índice (equivalente a linhas da tabela). Ele é altamente flexível e facilita a análise, limpeza, manipulação e visualização de dados.

Quando uma planilha do Excel é utilizada como um DataFrame em Python para análise de dados, ela se torna uma estrutura de dados que permite a manipulação, análise e visualização de grandes volumes de dados de uma maneira mais eficiente e automatizada do que o próprio Excel. Abaixo segue um exemplo de DataFrame que pode ser interpretado como uma planilha do Excel.

python

import pandas as pd

data = {

    ‘Nome’: [‘Ana’, ‘João’, ‘Maria’],

    ‘Idade’: [28, 34, 29],

    ‘Cidade’: [‘São Paulo’, ‘Rio de Janeiro’, ‘Curitiba’]

}

df = pd.DataFrame(data)

print(df)

Estrutura do DataFrame

plaintext

   Nome  Idade         Cidade

0    Ana     28      São Paulo

1   João     34  Rio de Janeiro

2  Maria     29        Curitiba

  • Colunas: ‘Nome’, ‘Idade’, ‘Cidade’. Cada chave no dicionário de dados representa uma coluna.
  • Linhas: 0, 1, 2. Cada linha tem um índice que, por padrão, é numérico e começa em 0.

Acessando Colunas

Você pode acessar uma coluna específica usando a chave correspondente.

python

# Acessando a coluna ‘Nome’

print(df[‘Nome’])

# Resultado:

# 0     Ana

# 1    João

# 2   Maria

# Name: Nome, dtype: object

Acessando Linhas

Você pode acessar linhas usando métodos como loc (para acesso baseado em rótulos) e iloc (para acesso baseado em índices).

Usando loc

python

# Acessando a linha com índice 1

print(df.loc[1])

# Resultado:

# Nome                João

# Idade                 34

# Cidade    Rio de Janeiro

# Name: 1, dtype: object

Usando iloc

python

# Acessando a linha com índice 1

print(df.iloc[1])

# Resultado:

# Nome                João

# Idade                 34

# Cidade    Rio de Janeiro

# Name: 1, dtype: object

Manipulando Colunas

Você pode adicionar, remover ou modificar colunas usando as chaves.

Adicionar uma nova coluna

python

df[‘Nova_Coluna’] = df[‘Idade’] + 10

print(df)

plaintext

   Nome  Idade         Cidade  Nova_Coluna

0    Ana     28      São Paulo           38

1   João     34  Rio de Janeiro           44

2  Maria     29        Curitiba           39

Remover uma coluna

python

df = df.drop(columns=[‘Nova_Coluna’])

print(df)

plaintext

   Nome  Idade         Cidade

0    Ana     28      São Paulo

1   João     34  Rio de Janeiro

2  Maria     29        Curitiba

Resumo

  • Chaves no dicionário: Representam colunas no DataFrame.
  • Linhas: São indexadas numericamente por padrão, mas podem ser personalizadas.

Exemplos Adicionais

Filtrando dados

python

# Filtrar linhas onde a idade é maior que 30

df_filtrado = df[df[‘Idade’] > 30]

print(df_filtrado)

plaintext

Copiar código

   Nome  Idade         Cidade

1   João     34  Rio de Janeiro

Agrupando dados

python

# Agrupar por ‘Cidade’ e calcular a média das idades

df_agrupado = df.groupby(‘Cidade’)[‘Idade’].mean()

print(df_agrupado)

plaintext

Copiar código

Cidade

Curitiba           29

Rio de Janeiro     34

São Paulo          28

Name: Idade, dtype: int64

Escrita em Planilhas

Escrever em uma nova planilha

python

 

# Criando um DataFrame de exemplo

data = {‘Nome’: [‘Ana’, ‘João’, ‘Maria’],

        ‘Idade’: [28, 34, 29]}

df = pd.DataFrame(data)

 

# Escrever o DataFrame em uma nova planilha

 

df.to_excel(‘novo_arquivo.xlsx’, sheet_name=’Nova_Planilha’, index=False)

 

Escrever múltiplos DataFrames em diferentes planilhas

python

# Criando DataFrames de exemplo

df1 = pd.DataFrame({‘Nome’: [‘Ana’, ‘João’, ‘Maria’], ‘Idade’: [28, 34, 29]})

df2 = pd.DataFrame({‘Cidade’: [‘São Paulo’, ‘Rio de Janeiro’, ‘Curitiba’], ‘População’: [12e6, 6e6, 2e6]})

# Escrever os DataFrames em diferentes planilhas

with pd.ExcelWriter(‘multiplas_planilhas.xlsx’) as writer:

    df1.to_excel(writer, sheet_name=’Pessoas’, index=False)

    df2.to_excel(writer, sheet_name=’Cidades’, index=False)

Salvando Modificações em um Arquivo Excel

Atualizando uma planilha existente

Se você quiser adicionar dados a uma planilha existente sem sobrescrever o arquivo inteiro, você pode usar a função ExcelWriter com o modo de adição:

python

with pd.ExcelWriter(‘arquivo_existente.xlsx’, mode=’a’, engine=’openpyxl’) as writer:

    df.to_excel(writer, sheet_name=’Planilha_Atualizada’, index=False)

Exemplo Completo

Aqui está um exemplo completo que cobre leitura, manipulação e escrita:

python

import pandas as pd

# Leitura do arquivo Excel

df = pd.read_excel(‘caminho_para_seu_arquivo.xlsx’, sheet_name=’Nome_da_Planilha’)

# Filtragem de dados

df_filtrado = df[df[‘Idade’] > 30]

# Adicionando uma nova coluna

df_filtrado[‘Nova_Coluna’] = df_filtrado[‘Idade’] * 2

# Escrevendo em uma nova planilha

with pd.ExcelWriter(‘arquivo_atualizado.xlsx’, engine=’openpyxl’) as writer:

    df.to_excel(writer, sheet_name=’Original’, index=False)

    df_filtrado.to_excel(writer, sheet_name=’Filtrado’, index=False)

Após esse breve tutorial, espero que possa desfrutar do conhecimento adquirido aqui para realizar diversos projetos de filtragem e análise de dados.

Gabriel Mozzer

%d blogueiros gostam disto: