drop (DataFrameNaFunctions)

Devolve uma nova DataFrame omissão de linhas com valores nulos ou NaN. DataFrame.dropna e DataFrameNaFunctions.drop são pseudónimos entre si.

Sintaxe

drop(how='any', thresh=None, subset=None)

Parâmetros

Parâmetro Tipo Descrição
how STR, opcional Se deve eliminar uma linha se esta contiver quaisquer nulos ou apenas se todos os seus valores forem nulos. Os valores aceites são 'any' (por defeito) e 'all'. Se thresh for especificado, how é ignorado.
thresh int, opcional Se especificado, elimine linhas que tenham menos do que thresh valores não nulos. Sobrescreve how.
subset str, tuple ou list, opcional Nomes de colunas a considerar ao verificar valores nulos ou NaN.

Devoluções

DataFrame

Exemplos

from pyspark.sql import Row
df = spark.createDataFrame([
    Row(age=10, height=80.0, name="Alice"),
    Row(age=5, height=float("nan"), name="Bob"),
    Row(age=None, height=None, name="Tom"),
    Row(age=None, height=float("nan"), name=None),
])

Remove a linha se contiver algum valor nulo ou NaN.

df.na.drop().show()
# +---+------+-----+
# |age|height| name|
# +---+------+-----+
# | 10|  80.0|Alice|
# +---+------+-----+

Elimina a linha apenas se todos os seus valores forem nulos ou NaN.

df.na.drop(how='all').show()
# +----+------+-----+
# | age|height| name|
# +----+------+-----+
# |  10|  80.0|Alice|
# |   5|   NaN|  Bob|
# |NULL|  NULL|  Tom|
# +----+------+-----+

Eliminar linhas que tenham menos valores que thresh não nulos e não-NaN.

df.na.drop(thresh=2).show()
# +---+------+-----+
# |age|height| name|
# +---+------+-----+
# | 10|  80.0|Alice|
# |  5|   NaN|  Bob|
# +---+------+-----+

Elimina linhas com valores nulos e NaN nas colunas especificadas.

df.na.drop(subset=['age', 'name']).show()
# +---+------+-----+
# |age|height| name|
# +---+------+-----+
# | 10|  80.0|Alice|
# |  5|   NaN|  Bob|
# +---+------+-----+