O Pandas fornece funções poderosas de manipulação e análise de dados e é uma ferramenta essencial do dia a dia para a ciência de dados. Neste artigo, apresentaremos os 15 trechos de código do Pandas mais comumente usados. Esses snippets ajudarão a simplificar as tarefas de análise de dados e a extrair insights valiosos dos conjuntos de dados.
1. Filtrar dados
Pandas oferece várias maneiras de filtrar dados.
import pandas as pd
# Create a DataFrame
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [25, 30, 35, 40]}
df = pd.DataFrame(data)
# Filter rows where Age is greater than 30
filtered_df = df[df['Age'] > 30]
print(filtered_df)
2. Agrupar e agregar dados
# Grouping by a column and calculating the mean
grouped = df.groupby('Age').mean()
print(grouped)
3. Valores faltantes de dados
# Check for missing values
missing_values = df.isnull().sum()
# Fill missing values with a specific value
df['Age'].fillna(0, inplace=True)
4. Aplique funções às colunas
apply()
As funções permitem que funções personalizadas sejam aplicadas nas linhas ou colunas de um DataFrame para permitir operações de transformação e manipulação de dados mais complexas.
df['Age'] = df['Age'].apply(lambda x: x * 2)
5. Conecte quadros de dados
A conexão aqui é principalmente a conexão de linhas, ou seja, conectar dois DataFrames com a mesma estrutura de colunas
# Concatenate two DataFrames
df1 = pd.DataFrame({'A': ['A0', 'A1'], 'B': ['B0', 'B1']})
df2 = pd.DataFrame({'A': ['A2', 'A3'], 'B': ['B2', 'B3']})
result = pd.concat([df1, df2], ignore_index=True)
print(result)
6. Mesclar DataFrames
A fusão aqui refere-se à fusão de colunas, ou seja, com base em uma ou várias colunas iguais, mesclando
# Merge two DataFrames
left = pd.DataFrame({'key': ['A', 'B', 'C'], 'value': [1, 2, 3]})
right = pd.DataFrame({'key': ['B', 'C', 'D'], 'value': [4, 5, 6]})
merged = pd.merge(left, right, on='key', how='inner')
print(merged)
7. Tabela dinâmica
pivot_table
é uma das funções importantes usadas para dinamizar dados. Ele reorganiza e resume os dados com base nos valores de uma ou mais colunas para compreender melhor a estrutura e os relacionamentos dos dados.
# Creating a pivot table
pivot_table = df.pivot_table(index='Name', columns='Age', values='Value')
print(pivot_table)
8. Processamento de dados do tipo hora/data
# Converting a column to DateTime
df['Date'] = pd.to_datetime(df['Date'])
9. Remodelagem de dados
pandas.melt()
É usado para converter a tabela de dados em formato amplo para formato longo. Esta função é frequentemente usada em operações de remodelagem de dados para facilitar a análise e visualização dos dados.
pandas.melt(frame, id_vars=None, value_vars=None, var_name=None, value_name='value', col_level=None)
Descrição do parâmetro:
frame
: A tabela de dados (DataFrame) a ser remodelada.id_vars
: Colunas que precisam ser preservadas, se tornarão variáveis identificadoras no formato longo e não serão "derretidas".value_vars
: Colunas que precisam ser "fundidas", serão integradas em uma coluna e representadas por um novo nome de coluna.var_name
: o nome da nova coluna usada para armazenar os nomes das colunas "fundidas".value_name
: O nome da nova coluna para armazenar os valores "derretido".col_level
: Se os dados de entrada forem um índice multinível (MultiIndex), você poderá especificar em qual nível aplicar a operação "derreter".
Aqui está um exemplo mostrando como usar
melt()
A função converte dados de formato amplo em formato longo, assumindo a seguinte tabela de dados de formato amplo
df
:
ID Name Math English History
0 1 Amy 90 85 88
1 2 Bob 78 92 76
2 3 John 88 79 90
nós vamos
Math
、
English
e
History
Para "derreter" as colunas em uma tabela de dados de formato longo, faça o seguinte:
melted_df=pd.melt(df, id_vars=['ID', 'Name'], value_vars=['Math', 'English', 'History'], var_name='Subject', value_name='Score')
Tabela de dados de formato longo convertida
melted_df
Do seguinte modo:
ID Name Subject Score
0 1 Amy Math 90
1 2 Bob Math 78
2 3 John Math 88
3 1 Amy English 85
4 2 Bob English 92
5 3 John English 79
6 1 Amy History 88
7 2 Bob History 76
8 3 John History 90
Dessa forma, você pode combinar diversas colunas de dados em uma tabela de dados de formato amplo em uma única coluna para facilitar análise, visualização ou outras manipulações.
melt()
As funções são muito úteis durante a fase de limpeza e transformação de dados.
melt()
Ou pode ser entendido como o acima
pivot_table
ou
unstack
operação reversa.
10. Dados categóricos
astype('category')
É um método para converter uma coluna de tipos de dados em um tipo de categoria (Categoria). A conversão de uma coluna de dados em um tipo categórico pode ajudar a economizar memória e melhorar o desempenho, especialmente quando a coluna de dados contém um número limitado de valores distintos.
# Encoding categorical variables
df['Category'] = df['Category'].astype('category')
df['Category'] = df['Category'].cat.codes
11. Amostragem de dados
# Randomly sample rows from a DataFrame
sampled_df = df.sample(n=2)
12. Calcule a soma cumulativa
# Calculating cumulative sum
df['Cumulative_Sum'] = df['Values'].cumsum()
13. Exclua dados duplicados
# Removing duplicate rows
df.drop_duplicates(subset=['Column1', 'Column2'], keep='first', inplace=True)
14. Crie variáveis fictícias
pandas.get_dummies()
é uma função usada no Pandas para realizar a codificação One-Hot.
# Creating dummy variables for categorical data
dummy_df = pd.get_dummies(df, columns=['Category'])
15. Exportação de dados
Existem muitos métodos que podem ser exportados para diferentes formatos
# Exporting DataFrame to CSV
df.to_csv('output.csv', index=False)
Resumir
Os 15 trechos de código Pandas acima são as operações de manipulação e análise de dados mais comumente usadas em nossa vida diária. Dominá-los com proficiência e incorporá-los aos fluxos de trabalho pode aumentar a eficiência e a eficácia do processamento e da exploração de conjuntos de dados.
https://avoid.overfit.cn/post/d5097a67e5c34a0ab42395d8c22091e1
Autor:pythonfundamentals