Freigeben über


fillna

Gibt einen neuen DataFrame zurück, der Nullwerte mit einem neuen Wert gefüllt wird. DataFrame.fillna und DataFrameNaFunctions.fill sind Aliase voneinander.

Syntax

fillna(value: Union["LiteralType", Dict[str, "LiteralType"]], subset: Optional[Union[str, Tuple[str, ...], List[str]]] = None)

Parameter

Parameter Typ Beschreibung
value int, float, string, bool oder dict der Wert, durch den Nullwerte ersetzt werden sollen. Wenn der Wert ein Dict ist, wird er subset ignoriert und value muss eine Zuordnung von Spaltennamen (Zeichenfolge) zum Ersetzungswert sein. Der Ersetzungswert muss ein Int-, Float-, boolescher Wert oder eine Zeichenfolge sein.
subset str, tupel oder liste, optional optionale Liste der zu berücksichtigenden Spaltennamen. Spalten, die in Einer Teilmenge angegeben sind, die nicht übereinstimmende Datentypen aufweisen, werden ignoriert.

Rückkehr

DataFrame: DataFrame mit ersetzten NULL-Werten.

Beispiele

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"])

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|
# +---+------+-----+----+

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|
# +----+------+-----+-----+

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|
# +---+------+-------+----+