Funções para DataFrames no Pandas
Em programação, a linguagem Python tem uma biblioteca poderosa chamada Pandas, criada para manipulação e análise de dados. Por isso, se você é um entusiasta na área de dados, você vai usar Pandas em algum momento.
Para demonstrar as principais funções da biblioteca, vou utilizar o dataset IBM HR Analytics Employee Attrition & Performance, o qual já fiz análise exploratória de dados.
- read_csv(“nome_do_arquivo”.csv)
É usado para ler um arquivo em csv (nesse caso) e transformar em um DataFrame. A função permite o uso de parâmetros que ajudam a visualizar melhor os dados.
df = pd.read_csv("ibm.csv")
Dessa mesma forma que colocamos .csv depois do nome do arquivo para indicar o formato, podemos ler arquivos em excel, txt, html e sql, por exemplo, apenas alterando o tipo de arquivo para indicar o formato.
2. columns()
A função columns() permite ver todas as colunas do DataFrame. É muito útil para o caso de grande conjunto de dados como este, que há muitas colunas e torna difícil a visualização de todas as colunas.
df.columns
3. head()
A função head mostra as 5 primeiras linhas do dataframe. Se preferir inserir a quantidade de linhas que deseja, você vai conseguir visualizar as n linhas que quiser.
df.head()
4. tail()
df.tail()
Em contrapartida, a função tail() nos mostra as 5 últimas linhas, ou como quiser, as últimas n linhas do dataset.
5. info()
Para verificar todas as coluna do dataframe e o tipo de dado, e o mais imporante dessa função é que conseguimos ver os valores nulos e ausente do nosso arquivo.
df.info()
6. dtypes
Retorna o tipo da variável.
df["Age"].dtype
7. select_dtypes()
Com essa função é possível selecionar todas as variáveis ou colunas que tem o mesmo tipo de dado.
df.select_dtypes(include="object")
A função retorna todas as colunas que possuem o tipo de dado object.
8. shape()
Retorna a quantidade de colunas e a quantidade de linhas do nosso dataset.
df.shape
9. describe()
Uma das funções mais importante da biblioteca Pandas, pois nos dá medidas estatística do dataset, como a média, mediana, desvio padrão e percentis, e permite que possamos realizar análise de dados mais rapidamente. Somente são consideradas as colunas com formato int ou float.
df.describe()
Conseguimos ver o total de pessoas em cada coluna (1470). Por exemplo, temos que em média as pessoas têm 2 anos desde que recebeu a última promoção e o máximo foram 15 anos.
10. corr()
Outra função muito importante para a análise exploratória é a corr(), pois conseguimos verificar o grau de correlação entre as colunas. A função exibe o coeficiente de correlação.
df.corr()
O coeficiente de correção varia de -1 a 1. A correlação 1 é relação linear perfeita e positiva; correlação -1 é relação linear perfeita e negativa; e 0 indica inexistência linear.
11. drop()
Permite eliminar a(s) coluna(s) que você não vai usar.
df = df.drop(columns=['BusinessTravel'])
Após executar essa linha de código, a coluna ‘BusinessTravel’ não estará mais disponível.
12. len()
Fornece o comprimento do dataset.
len(df)
Resultou em 1470 linhas.
13. value_counts()
Obtemos a quantidade de valor que existe em cada categoria. Por exemplo, queremos saber a quantidade de homens e mulheres que estão no nosso dataset e na coluna “Gender”:
df[['Gender']].value_counts()
14. isnull().sum()
Faz a soma de todos os valores null que existe no dataset.
15. iloc
Indexação puramente baseada em localização inteira para seleção por posição, segundo a documentação do Pandas. Por exemplo, selecionando as primeiras 5 linhas e as primeiras 2 colunas com iloc:
a = df.iloc[:5, :2]
a
16. loc
Conseguimos acessar atráves de um rótulo de linhas, colunas ou matriz booleana.
b = df.loc[:5, ["Age","Attrition"]]
b
Irá aparecer “KeyError” se algum item não for encontrado. E “IndexingError” se a chave indexada for passada e seu índice não puder ser alinhado.
17. rename()
Essa função permite com que renomeamos uma coluna, por exemplo. Nesse caso vou mudar a coluna “Age” para o nome “Idade”.
df.rename(columns={"Age": "Idade"})
Geralmente é útil renomear colunas a fim de facilitar o desenvolvimento da análise exploratória ou facilitar a escrita do código.