Pandas DataFrame DataFrame.dropna() Função
-
Sintaxe de
pandas.DataFrame.dropna()
-
Códigos de exemplo:
DataFrame.dropna()
para eliminar a linha -
Códigos de exemplo:
DataFrame.dropna()
a Coluna Drop -
Códigos de exemplo:
DataFrame.dropna()
Comhow=all
-
Códigos de exemplo:
DataFrame.dropna()
Com um subconjunto especificado ou Thresh -
Códigos de exemplo:
DataFrame.dropna()
Cominplace=True
A função pandas.DataFrame.dropna()
remove os valores nulos (valores ausentes) do DataFrame
, deixando cair as linhas ou colunas que contêm os valores nulos.
Os valores nulos são NaN
(Not a Number
) e NaT
(Not a Time
). O DataFrame.dropna()
detecta esses valores e filtra o DataFrame
de acordo.
Sintaxe de pandas.DataFrame.dropna()
DataFrame.dropna(axis, how, thresh, subset, inplace)
Parâmetros
axis |
Ele determina o eixo a ser ou linha ou coluna. Se for 0 ou 'index' , então ele deixa cair as linhas contendo os valores em falta. Se for 1 ou 'columns' , então ele deixa cair as colunas que contêm os valores em falta. Por padrão, seu valor é 0. |
how |
Este parâmetro determina como a função deixa cair as linhas ou colunas. Ele aceita apenas dois strings , ou any ou all . Por padrão, ele é definido como any . any deixa cair a linha ou coluna se houver algum valor nulo nela. all deixa cair a linha ou coluna se todos os valores estiverem faltando nela. |
thresh |
É um inteiro que especifica o menor número de valores não faltosos que impedem que as linhas ou colunas caiam. |
subset |
É um array que possui os nomes das linhas ou colunas para especificar o procedimento de eliminação. |
inplace |
É um valor booleano que muda o chamador DataFrame se definido como True . Por padrão, seu valor é False . |
Retornar
Ele retorna um DataFrame
filtrado com linhas ou colunas descartadas de acordo com os parâmetros passados.
Códigos de exemplo: DataFrame.dropna()
para eliminar a linha
Por padrão, o eixo é 0, ou seja, linhas, de modo que todas as saídas têm filas descidas.
import pandas as pd
dataframe=pd.DataFrame({'Attendance': {0: 60, 1: None, 2: 80,3: None, 4: 95},
'Name': {0: 'Olivia', 1: 'John', 2: 'Laura',3: 'Ben',4: 'Kevin'},
'Obtained Marks': {0: None, 1: 75, 2: 82, 3: 64, 4: None}})
print(dataframe)
O exemplo DataFrame
é o seguinte.
Attendance Name Obtained Marks
0 60.0 Olivia NaN
1 NaN John 75.0
2 80.0 Laura 82.0
3 NaN Ben 64.0
4 95.0 Kevin NaN
Todos os parâmetros desta função são opcionais. Se não passarmos nenhum parâmetro, então a função deixa cair todas as linhas contendo um único valor nulo.
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: None, 2: 80, 3: None, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: None, 1: 75, 2: 82, 3: 64, 4: None},
}
)
dataframe1 = dataframe.dropna()
print(dataframe1)
Resultado:
Attendance Name Obtained Marks
2 80.0 Laura 82.0
Todas as linhas que continham um único valor nulo foram descartadas.
Códigos de exemplo: DataFrame.dropna()
a Coluna Drop
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: None, 2: 80, 3: None, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: None, 1: 75, 2: 82, 3: 64, 4: None},
}
)
dataframe1 = dataframe.dropna(axis=1)
print(dataframe1)
Resultado:
Name
0 Olivia
1 John
2 Laura
3 Ben
4 Kevin
Ele deixou cair todas as colunas que continham um único valor em falta porque definimos axis=1
no método DataFrame.dropna()
.
Códigos de exemplo: DataFrame.dropna()
Com how=all
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: None, 2: 80, 3: None, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: None, 1: 75, 2: 82, 3: 64, 4: None},
}
)
dataframe1 = dataframe.dropna(axis=1, how="all")
print(dataframe1)
Resultado:
Attendance Name Obtained Marks
0 60.0 Olivia NaN
1 NaN John 75.0
2 80.0 Laura 82.0
3 NaN Ben 64.0
4 95.0 Kevin NaN
As linhas contendo os valores em falta não são descartadas porque o parâmetro how
tem valor definido para all
, o que significa que todos os valores da linha devem ser nulos.
Se todos os valores estiverem faltando no eixo especificado, então o método DataFrame.dropna()
cai esse eixo mesmo quando o how
está configurado para ser all
.
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: None, 2: 80, 3: None, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: None, 1: None, 2: None, 3: None, 4: None},
}
)
print(dataframe)
print("--------")
dataframe1 = dataframe.dropna(axis=1, how="all")
print(dataframe1)
Resultado:
Attendance Name Obtained Marks
0 60.0 Olivia None
1 NaN John None
2 80.0 Laura None
3 NaN Ben None
4 95.0 Kevin None
--------
Attendance Name
0 60.0 Olivia
1 NaN John
2 80.0 Laura
3 NaN Ben
4 95.0 Kevin
Códigos de exemplo: DataFrame.dropna()
Com um subconjunto especificado ou Thresh
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: None, 2: 80, 3: None, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: None, 1: 75, 2: 82, 3: 64, 4: None},
}
)
dataframe1 = dataframe.dropna(thresh=3)
print(dataframe1)
Resultado:
Attendance Name Obtained Marks
2 80.0 Laura 82.0
O valor de thresh
é 3, o que significa que para evitar a queda, são necessários pelo menos 3 valores não vazios.
Poderíamos também especificar o subset
.
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: None, 2: 80, 3: None, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: None, 1: 75, 2: 82, 3: 64, 4: None},
}
)
dataframe1 = dataframe.dropna(subset=["Attendance", "Name"])
print(dataframe1)
Resultado:
Attendance Name Obtained Marks
0 60.0 Olivia NaN
2 80.0 Laura 82.0
4 95.0 Kevin NaN
Ele deixa cair linhas com valores ausentes com base na coluna Attendance
e Name
. Ela não deixa cair linhas se apenas os valores em outras colunas, Obtained Marks
aqui, tiverem valores faltantes.
Códigos de exemplo: DataFrame.dropna()
Com inplace=True
DataFrame.dropna()
muda o chamador DataFrame
no local se inplace
estiver definido para True
.
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: None, 2: 80, 3: None, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: None, 1: 75, 2: 82, 3: 64, 4: None},
}
)
dataframe1 = dataframe.dropna(inplace=True)
print(dataframe1)
Resultado:
None
O parâmetro modificou o chamador DataFrame
no local e retornou None
.