dans Spark, ajoutant une colonne constante à un dataframe avec une valeur spécifique pour chaque ligne peut être atteinte à l'aide de diverses méthodes. Valeur littérale, qui peut être utilisée comme deuxième argument de DataFrame.WithColumn pour ajouter une colonne constante:
pour des colonnes plus complexes, des fonctions comme le tableau, la carte et la structure peuvent être utilisées pour construire les valeurs de colonnes souhaitées:
from pyspark.sql.functions import lit df.withColumn('new_column', lit(10))
typedlit (Spark 2.2)
from pyspark.sql.functions import array, map, struct df.withColumn("some_array", array(lit(1), lit(2), lit(3))) df.withColumn("some_map", map(lit("key1"), lit(1), lit("key2"), lit(2)))
comme alternative à l'utilisation de valeurs littérales, il est possible de créer une fonction définie par l'utilisateur (UDF) qui renvoie une valeur constante pour chaque ligne et utilise que UDF pour ajouter la chronique:
import org.apache.spark.sql.functions.typedLit df.withColumn("some_array", typedLit(Seq(1, 2, 3))) df.withColumn("some_struct", typedLit(("foo", 1, 0.3)))note:
Les valeurs constantes peuvent également être transmises en tant qu'arguments aux fonctions udfs ou sql en utilisant les mêmes constructions.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3