Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Devuelve un nuevo DataFrame valor en el que los valores NULL se rellenan con un nuevo valor.
DataFrame.fillna y DataFrameNaFunctions.fill son alias entre sí.
Sintaxis
fill(value, subset=None)
Parámetros
| Parámetro | Tipo | Descripción |
|---|---|---|
value |
int, float, str, bool o dict | Valor por el que se van a reemplazar los valores NULL. Si se proporciona un dict, subset se omite y value debe ser una asignación del nombre de columna al valor de reemplazo. Los valores de reemplazo deben ser int, float, bool o str. |
subset |
str, tupla o lista, opcional | Nombres de columna que se deben tener en cuenta. Las columnas de subset que no tienen un tipo de datos coincidente para value se omiten. |
Devoluciones
DataFrame
Ejemplos
df = spark.createDataFrame([
(10, 80.5, "Alice", None),
(5, None, "Bob", None),
(None, None, "Tom", None),
(None, None, None, True)],
schema=["age", "height", "name", "bool"])
Rellene todos los valores NULL con 50 para las columnas numéricas.
df.na.fill(50).show()
# +---+------+-----+----+
# |age|height| name|bool|
# +---+------+-----+----+
# | 10| 80.5|Alice|NULL|
# | 5| 50.0| Bob|NULL|
# | 50| 50.0| Tom|NULL|
# | 50| 50.0| NULL|true|
# +---+------+-----+----+
Rellene todos los valores NULL con False para las columnas booleanas.
df.na.fill(False).show()
# +----+------+-----+-----+
# | age|height| name| bool|
# +----+------+-----+-----+
# | 10| 80.5|Alice|false|
# | 5| NULL| Bob|false|
# |NULL| NULL| Tom|false|
# |NULL| NULL| NULL| true|
# +----+------+-----+-----+
Rellene los valores NULL con 50 para age y "unknown" para name.
df.na.fill({'age': 50, 'name': 'unknown'}).show()
# +---+------+-------+----+
# |age|height| name|bool|
# +---+------+-------+----+
# | 10| 80.5| Alice|NULL|
# | 5| NULL| Bob|NULL|
# | 50| NULL| Tom|NULL|
# | 50| NULL|unknown|true|
# +---+------+-------+----+
Rellene todos los valores NULL con "Spark" para la name columna.
df.na.fill(value='Spark', subset='name').show()
# +----+------+-----+----+
# | age|height| name|bool|
# +----+------+-----+----+
# | 10| 80.5|Alice|NULL|
# | 5| NULL| Bob|NULL|
# |NULL| NULL| Tom|NULL|
# |NULL| NULL|Spark|true|
# +----+------+-----+----+