Pandas - Limpando Células Vazias


Células vazias

Células vazias podem fornecer um resultado errado ao analisar dados.


Remover linhas

Uma maneira de lidar com células vazias é remover as linhas que contêm células vazias.

Isso geralmente é bom, pois os conjuntos de dados podem ser muito grandes e a remoção de algumas linhas não terá um grande impacto no resultado.

Exemplo

Retorne um novo Data Frame sem células vazias:

import pandas as pd

df = pd.read_csv('data.csv')

new_df = df.dropna()

print(new_df.to_string())

Em nossos exemplos de limpeza, usaremos um arquivo CSV chamado 'dirtydata.csv'.

Faça o download do dirtydata.csv . ou Abra dirtydata.csv

Nota: Por padrão, o dropna()método retorna um novo DataFrame e não altera o original.

Se você deseja alterar o DataFrame original, use o inplace = Trueargumento:

Exemplo

Remova todas as linhas com valores NULL:

import pandas as pd

df = pd.read_csv('data.csv')

df.dropna(inplace = True)

print(df.to_string())

Nota: Agora, o dropna(inplace = True)NÃO retornará um novo DataFrame, mas removerá todas as linhas contendo valores NULL do DataFrame original.


Substituir valores vazios

Outra maneira de lidar com células vazias é inserir um novo valor.

Dessa forma, você não precisa excluir linhas inteiras apenas por causa de algumas células vazias.

O fillna()método nos permite substituir células vazias por um valor:

Exemplo

Substitua os valores NULL pelo número 130:

import pandas as pd

df = pd.read_csv('data.csv')

df.fillna(130, inplace = True)

Substituir apenas para colunas especificadas

O exemplo acima substitui todas as células vazias em todo o Data Frame.

Para substituir apenas valores vazios de uma coluna, especifique o nome da coluna para o DataFrame:

Exemplo

Substitua os valores NULL nas colunas "Calorias" pelo número 130:

import pandas as pd

df = pd.read_csv('data.csv')

df["Calories"].fillna(130, inplace = True)

w3schools CERTIFIED . 2021

Obter certificação!

Complete os módulos do Pandas, faça os exercícios, faça o exame e você se tornará certificado pela w3schools!

$ 10 INSCRIÇÃO

Substituir usando média, mediana ou modo

Uma maneira comum de substituir células vazias é calcular o valor médio, mediano ou moda da coluna.

O Pandas usa os métodos mean() median()e mode()para calcular os respectivos valores para uma coluna especificada:

Exemplo

Calcule a MÉDIA e substitua quaisquer valores vazios por ela:

import pandas as pd

df = pd.read_csv('data.csv')

x = df["Calories"].mean()

df["Calories"].fillna(x, inplace = True)

Média = o valor médio (a soma de todos os valores dividido pelo número de valores).

Exemplo

Calcule a MEDIAN e substitua quaisquer valores vazios por ela:

import pandas as pd

df = pd.read_csv('data.csv')

x = df["Calories"].median()

df["Calories"].fillna(x, inplace = True)

Mediana = o valor no meio, depois de classificar todos os valores em ordem crescente.

Exemplo

Calcule o MODO e substitua quaisquer valores vazios por ele:

import pandas as pd

df = pd.read_csv('data.csv')

x = df["Calories"].mode()[0]

df["Calories"].fillna(x, inplace = True)

Moda = o valor que aparece com mais frequência.