Folha de dicas do Pandas para ciência de dados em Python
O que é a folha de dicas do Pandas?
A biblioteca Pandas tem muitas funções, mas algumas delas são confusas para algumas pessoas. Fornecemos aqui um recurso útil disponível chamado Python Folha de dicas do Pandas. Explica o básico do Pandas de maneira simples e concisa.
Quer você seja um novato ou tenha experiência com Pandas, esta folha de dicas pode servir como um guia de referência útil. Ele cobre uma variedade de tópicos, incluindo trabalhar com estruturas de dados Series e DataFrame, selecionar e ordenar dados e aplicar funções aos seus dados.
Em resumo, este Pandas Python Cheat Sheet é um bom recurso para quem deseja aprender mais sobre como usar Python para Ciência de Dados. É uma ferramenta de referência útil. Isso pode ajudá-lo a melhorar seu habilidades de análise de dados e trabalhe de forma mais eficiente com o Pandas.
👉 Baixe o PDF da folha de dicas aqui
Explicando funções importantes no Pandas:
Para começar a trabalhar com as funções do pandas, você precisa instalar e importar o pandas. Existem dois comandos para fazer isso:
Etapa 1) # Instale o Pandas
Pip instalar pandas
Etapa 2) # Importar Pandas
Importar pandas como pd
Agora você pode começar a trabalhar com as funções do Pandas. Trabalharemos para manipular, analisar e limpar os dados. Aqui estão algumas funções importantes dos pandas.
Estruturas de dados Pandas
Como já discutimos, o Pandas possui duas estruturas de dados chamadas Series e DataFrames. Ambos são arrays rotulados e podem conter qualquer tipo de dados. A única diferença é que Series é um array unidimensional e DataFrame é um array bidimensional.
1. Série
É uma matriz rotulada unidimensional. Ele pode conter qualquer tipo de dados.
s = pd.Series([2, -4, 6, 3, None], index=['A', 'B', 'C', 'D', 'E'])
2. Quadro de Dados
É uma matriz rotulada bidimensional. Ele pode conter qualquer tipo de dados e diferentes tamanhos de colunas.
data = {'RollNo' : [101, 102, 75, 99], 'Name' : ['Mithlesh', 'Ram', 'Rudra', 'Mithlesh'], 'Course' : ['Nodejs', None, 'Nodejs', 'JavaScript'] } df = pd.DataFrame(data, columns=['RollNo', 'Name', 'Course']) df.head()
Importando Dados
Os Pandas têm a capacidade de importar ou ler vários tipos de arquivos em seu Notebook.
Aqui estão alguns exemplos dados abaixo.
# Import a CSV file pd pd.read_csv(filename) # Import a TSV file pd.read_table(filename) # Import a Excel file pd pd.read_excel(filename) # Import a SQL table/database pd.read_sql(query, connection_object) # Import a JSON file pd.read_json(json_string) # Import a HTML file pd.read_html(url) # From clipboard to read_table() pd.read_clipboard() # From dict pd.DataFrame(dict)
Seleção
Você pode selecionar elementos por sua localização ou índice. Você pode selecionar linhas, colunas e valores distintos usando essas técnicas.
1. Série
# Accessing one element from Series s['D'] # Accessing all elements between two given indices s['A':'C'] # Accessing all elements from starting till given index s[:'C'] # Accessing all elements from given index till end s['B':]
2. Quadro de Dados
# Accessing one column df df['Name'] # Accessing rows from after given row df[1:] # Accessing till before given row df[:1] # Accessing rows between two given rows df[1:2]
Seleção por indexação e configuração booleana
1. Por posição
df.iloc[0, 1] df.iat[0, 1]
2. Por etiqueta
df.loc[[0], ['Name']]
3. Por etiqueta/posição
df.loc[2] # Both are same df.iloc[2]
4. Indexação Booleana
# Series s where value is > 1 s[(s > 0)] # Series s where value is <-2 or >1 s[(s < -2) | ~(s > 1)] # Use filter to adjust DataFrame df[df['RollNo']>100] # Set index a of Series s to 6 s['D'] = 10 s.head()
Limpeza de Dados
Para Python para fins de limpeza de dados, você pode executar as seguintes operações:
- Renomeie colunas usando o método rename().
- Atualize valores usando o método at[] ou iat[] para acessar e modificar elementos específicos.
- Crie uma cópia de uma série ou quadro de dados usando o método copy().
- Verifique se há valores NULL usando o método isnull() e elimine-os usando o método dropna().
- Verifique se há valores duplicados usando o método duplicado(). Elimine-os usando o método drop_duplicates().
- Substitua os valores NULL usando o método fill() por um valor especificado.
- Substitua os valores usando o método replace().
- Classifique os valores usando o método sort_values().
- Classifique os valores usando o método rank().
# Renaming columns df.columns = ['a','b','c'] df.head() # Mass renaming of columns df = df.rename(columns={'RollNo': 'ID', 'Name': 'Student_Name'}) # Or use this edit in same DataFrame instead of in copy df.rename(columns={'RollNo': 'ID', 'Name': 'Student_Name'}, inplace=True) df.head() # Counting duplicates in a column df.duplicated(subset='Name') # Removing entire row that has duplicate in given column df.drop_duplicates(subset=['Name']) # You can choose which one keep - by default is first df.drop_duplicates(subset=['Name'], keep='last') # Checks for Null Values s.isnull() # Checks for non-Null Values - reverse of isnull() s.notnull() # Checks for Null Values df df.isnull() # Checks for non-Null Values - reverse of isnull() df.notnull() # Drops all rows that contain null values df.dropna() # Drops all columns that contain null values df.dropna(axis=1) # Replaces all null values with 'Guru99' df.fillna('Guru99') # Replaces all null values with the mean s.fillna(s.mean()) # Converts the datatype of the Series to float s.astype(float) # Replaces all values equal to 6 with 'Six' s.replace(6,'Six') # Replaces all 2 with 'Two' and 6 with 'Six' s.replace([2,6],['Two','Six']) # Drop from rows (axis=0) s.drop(['B', 'D']) # Drop from columns(axis=1) df.drop('Name', axis=1) # Sort by labels with axis df.sort_index() # Sort by values with axis df.sort_values(by='RollNo') # Ranking entries df.rank() # s1 is pointing to same Series as s s1 = s # s_copy of s, but not pointing same Series s_copy = s.copy() # df1 is pointing to same DataFrame as df df1 = s # df_copy of df, but not pointing same DataFrame df_copy = df.copy()
Recuperando informações
Você pode executar estas operações para recuperar informações:
- Use o atributo shape para obter o número de linhas e colunas.
- Use o método head() ou tail() para obter as primeiras ou últimas linhas como amostra.
- Use o método info(), description() ou dtypes para obter informações sobre o tipo de dados, contagem, média, desvio padrão, valores mínimo e máximo.
- Use os métodos count(), min(), max(), sum(), mean() e median() para obter informações estatísticas específicas para valores.
- Use o método loc[] para obter uma linha.
- Use o método groupby() para aplicar a função GROUP BY para agrupar valores semelhantes em uma coluna de um DataFrame.
1. Informação básica
# Counting all elements in Series len(s) # Counting all elements in DataFrame len(df) # Prints number of rows and columns in dataframe df.shape # Prints first 10 rows by default, if no value set df.head(10) # Prints last 10 rows by default, if no value set df.tail(10) # For counting non-Null values column-wise df.count() # For range of index df df.index # For name of attributes/columns df.columns # Index, Data Type and Memory information df.info() # Datatypes of each column df.dtypes # Summary statistics for numerical columns df.describe()
2. Resumo
# For adding all values column-wise df.sum() # For min column-wise df.min() # For max column-wise df.max() # For mean value in number column df.mean() # For median value in number column df.median() # Count non-Null values s.count() # Count non-Null values df.count() # Return Series of given column df['Name'].tolist() # Name of columns df.columns.tolist() # Creating subset df[['Name', 'Course']] # Return number of values in each group df.groupby('Name').count()
Aplicando Funções
# Define function f = lambda x: x*5 # Apply this function on given Series - For each value s.apply(f) # Apply this function on given DataFrame - For each value df.apply(f)
1. Alinhamento interno de dados
# NA values for indices that don't overlap s2 = pd.Series([8, -1, 4], index=['A', 'C', 'D']) s + s2
2. Aritmética Operações com métodos de preenchimento
# Fill values that don't overlap s.add(s2, fill_value=0)
3. Filtrar, classificar e agrupar por
As funções a seguir podem ser usadas para filtrar, classificar e agrupar por série e dataframe.
# Filter rows where column is greater than 100 df[df['RollNo']>100] # Filter rows where 70 < column < 101 df[(df['RollNo'] > 70) & (df['RollNo'] < 101)] # Sorts values in ascending order s.sort_values() # Sorts values in descending order s.sort_values(ascending=False) # Sorts values by RollNo in ascending order df.sort_values('RollNo') # Sorts values by RollNo in descending order df.sort_values('RollNo', ascending=False)
Exportando dados
O Pandas tem a capacidade de exportar ou gravar dados em vários formatos. Aqui estão alguns exemplos dados abaixo.
# Export as a CSV file df df.to_csv(filename) # Export as a Excel file df df.to_excel(filename) # Export as a SQL table df df.to_sql(table_name, connection_object) # Export as a JSON file df.to_json(filename) # Export as a HTML table df.to_html(filename) # Write to the clipboard df.to_clipboard()
Conclusão da folha de dicas do Pandas:
Pandas é uma biblioteca de código aberto em Python para trabalhar com conjuntos de dados. Sua capacidade de analisar, limpar, explorar e manipular dados. Pandas é construído em cima do Numpy. É usado com outros programas como Matplotlib e scikit-learn. Abrange tópicos como estruturas de dados, seleção de dados, importação de dados, indexação booleana, eliminação de valores, classificação e limpeza de dados. Também preparamos o PDF da folha de dicas do pandas para o artigo. Pandas é uma biblioteca em Python e a ciência de dados usa essa biblioteca para trabalhar com dataframes e séries do pandas. Discutimos vários comandos do pandas nesta folha de dicas.
Colab de folha de dicas
Meu arquivo de exercícios do Colab para Pandas – Folha de referências do Pandas – Python para ciência de dados.ipynb