Hoje, vamos mergulhar no incrível mundo da Análise de Dados com Pandas. Se você já trabalhou com dados, sabe que eles são a nova moeda do mundo digital. Mas para extrair valor desses dados, precisamos das ferramentas certas. E uma das melhores do mercado atualmente é a biblioteca Pandas do Python. Vamos desvendar juntos o poder do Pandas e transformar essas informações brutas em insights valiosos.
Sumário
O que é o Pandas?
Pandas é uma biblioteca de software escrita para a linguagem de programação Python que permite a manipulação e análise de dados de maneira eficiente. É uma ferramenta robusta e essencial para qualquer Cientista de Dados ou Analista de Dados. Eu já escrevi sobre O que é Pandas aqui no Balaio Científico, confira.
![](https://www.balaiocientifico.com/wp-content/uploads/2022/12/banner_livro_python.webp)
Seu nome deriva do termo “panel data”, um termo econômico que se refere a conjuntos de dados que incluem observações ao longo do tempo. O Pandas é capaz de trabalhar com uma variedade de tipos de dados, incluindo dados tabulares, dados de séries temporais e até mesmo dados não estruturados.
# Importando a biblioteca pandas
import pandas as pd
Primeiros passos com a Análise de Dados com Pandas
Em nossa jornada para dominar a análise de dados com Pandas, precisamos conhecer dois conceitos fundamentais: o DataFrame e a Series.
DataFrame
Um DataFrame é uma estrutura de dados bidimensional semelhante a uma tabela de banco de dados SQL ou uma planilha do Excel. Consiste em colunas e linhas onde cada coluna representa uma variável e cada linha representa um registro.
# Criando um DataFrame
dados = {
'nome': ['Ana', 'João', 'Maria', 'Pedro'],
'idade': [23, 35, 59, 12]
}
df = pd.DataFrame(dados)
print(df)
![](https://www.balaiocientifico.com/wp-content/uploads/2022/12/banner_livro_python.webp)
Series
Uma Series, por outro lado, é uma estrutura de dados unidimensional que pode armazenar qualquer tipo de dados. Você pode pensar nisso como uma única coluna de uma tabela.
# Criando uma Series
s = pd.Series([1, 2, 3, 4, 5])
print(s)
Importando e explorando dados com Pandas
A Análise de Dados com Pandas se torna realmente empolgante quando começamos a trabalhar com conjuntos de dados do mundo real. Vamos importar um conjunto de dados CSV e explorá-lo.
# Importando um conjunto de dados
df = pd.read_csv('caminho_para_seu_arquivo.csv')
# Visualizando as primeiras linhas
print(df.head())
A função head()
retorna as primeiras cinco linhas do DataFrame. Isso é especialmente útil quando estamos lidando com grandes conjuntos de dados.
![](https://www.balaiocientifico.com/wp-content/uploads/2022/12/banner_livro_python.webp)
Agora, vamos descobrir algumas estatísticas básicas sobre nossos dados usando a função describe()
.
# Descrevendo o conjunto de dados
print(df.describe())
A função describe()
retorna estatísticas descritivas que resumem a tendência central, a dispersão e a forma da distribuição de um conjunto de dados.
Manipulando dados com Pandas
A biblioteca Pandas oferece uma série de maneiras mais práticas de manipular dados. Vamos discutir algumas delas.
![](https://www.balaiocientifico.com/wp-content/uploads/2022/12/banner_livro_python.webp)
Selecionando colunas
Durante sua jornada com a análise de dados usando Pandas, muitas vezes você vai se deparar com a necessidade de selecionar uma ou várias colunas de seu DataFrame. Vamos ver como é simples fazer isso.
# Selecionando uma única coluna
print(df['nome_da_coluna'])
Nesse pequeno trecho de código, estamos selecionando uma única coluna de nosso DataFrame. A expressão df['nome_da_coluna']
simplesmente acessa a coluna denominada ‘nome_da_coluna’ em nosso DataFrame, onde ‘df’ é a variável que representa nosso DataFrame. O resultado dessa expressão será uma Series do Pandas que contém os dados da coluna selecionada.
![](https://www.balaiocientifico.com/wp-content/uploads/2023/07/banner-de-fundamentos-de-julia.webp)
# Selecionando múltiplas colunas
print(df[['coluna1', 'coluna2', 'coluna3']])
Agora, se quisermos selecionar mais de uma coluna, precisamos passar uma lista de nomes de colunas para nosso DataFrame. A lista é indicada pelos colchetes extras [['coluna1', 'coluna2', 'coluna3']]
. O resultado dessa expressão será um DataFrame que contém apenas as colunas selecionadas.
![](https://www.balaiocientifico.com/wp-content/uploads/2022/12/banner_livro_python.webp)
Essa capacidade de selecionar colunas específicas é muito útil quando queremos focar apenas em um subconjunto de nossos dados. Por exemplo, pode ser que alguns dos atributos não sejam relevantes para nossa análise atual, e podemos facilmente descartá-los dessa maneira.
Lembrando, claro, que você deve substituir ‘nome_da_coluna’, ‘coluna1’, ‘coluna2’ e ‘coluna3’ pelos nomes reais das colunas no seu DataFrame.
Filtrando linhas
Nas análises de dados, muitas vezes precisamos extrair subconjuntos de dados com base em determinados critérios. Isso é conhecido como filtragem de dados. No Pandas, essa tarefa é bastante simplificada. Vamos aprender como fazer isso com o exemplo a seguir.
# Filtrando linhas onde a coluna 'idade' é maior que 30
print(df[df['idade'] > 30])
No código acima, estamos filtrando as linhas do DataFrame df
onde a coluna ‘idade’ é maior que 30. A expressão df['idade'] > 30
cria uma máscara booleana: para cada linha do DataFrame, ela retorna True
se o valor da coluna ‘idade’ for maior que 30, e False
caso contrário.
Quando essa máscara booleana é passada para o DataFrame df
, ele retorna apenas as linhas para as quais a máscara é True
. O resultado é um novo DataFrame que contém apenas as linhas em que a ‘idade’ é maior que 30.
![](https://www.balaiocientifico.com/wp-content/uploads/2022/12/banner_livro_python.webp)
Essa capacidade de filtrar linhas com base em condições nos permite responder a perguntas mais direcionadas sobre nossos dados. Por exemplo, podemos estar interessados em analisar o comportamento de um determinado segmento da população, ou talvez queiramos descartar outliers de nossas análises. Com o Pandas, a filtragem de dados é tão simples quanto parece!
Agrupando dados
![](https://www.balaiocientifico.com/wp-content/uploads/2023/08/banner-livro-Fundamentos-em-R.webp)
O Pandas oferece uma gama impressionante de funções para manipular dados. Uma dessas funções é o groupby()
, que é semelhante à operação GROUP BY no SQL. É um recurso extremamente poderoso para quando você quer agrupar seus dados de acordo com algum critério, e em seguida, aplicar alguma função a cada um dos grupos. Vamos entender como isso funciona no exemplo abaixo.
#Agrupando dados pela coluna 'idade' e calculando a média da coluna 'salario'
print(df.groupby('idade')['salario'].mean())
No código acima, estamos primeiro agrupando o DataFrame df
pela coluna ‘idade’. Isso significa que todos os registros com a mesma idade serão agrupados juntos. Em seguida, selecionamos a coluna ‘salario’ e aplicamos a função mean()
, que calcula a média.
Portanto, esse comando retorna a média dos salários para cada grupo de idades. Em outras palavras, você pode interpretar o resultado como: “Para cada idade distinta no meu DataFrame, qual é o salário médio dos indivíduos dessa idade?”.
![](https://www.balaiocientifico.com/wp-content/uploads/2022/12/banner_livro_python.webp)
Essa é uma forma extremamente eficiente de analisar nosso DataFrame sob diferentes perspectivas. Podemos substituir ‘idade’ e ‘salario’ pelos nomes reais das colunas no nosso DataFrame, e a função mean()
por qualquer outra função que queiramos aplicar a cada grupo – poderia ser sum()
, min()
, max()
, count()
, entre outras.
Essas são apenas algumas das muitas operações que você pode realizar na Análise de Dados com Pandas. Lembre-se, a prática leva à perfeição. Continue explorando a biblioteca Pandas e aplicando-a aos seus conjuntos de dados. Logo você se tornará um mestre na Análise de Dados com Pandas.
![](https://www.balaiocientifico.com/wp-content/uploads/2022/12/banner_livro_python.webp)
Espero que você tenha gostado deste passeio pelo mundo da Análise de Dados com Pandas. Fique ligado para mais conteúdos interessantes sobre dados. Até a próxima!
Nota: Os exemplos de código neste artigo são para fins ilustrativos e podem não funcionar sem modificações apropriadas, como a substituição dos nomes das colunas pelos nomes das colunas no seu conjunto de dados.