Apache Spark, ajoutez une colonne calculée "CASE WHEN ... ELSE ..." à un DataFrame existant
J'essaye d'ajouter un "CAS LORSQUE ... SINON ..." colonne calculée à un DataFrame, en utilisant des Api Scala.
Départ dataframe:
color
Red
Green
Blue
Souhaité dataframe (syntaxe SQL: CAS QUAND la couleur == Green then 1 ELSE 0 END COMME bool):
color bool
Red 0
Green 1
Blue 0
Comment dois-je mettre en œuvre cette logique?
source d'informationauteur Leonardo Biagioli
Vous devez vous connecter pour publier un commentaire.
Dans la prochaine ÉTINCELLE version 1.4.0 (qui devrait être publié dans les prochains jours). Vous pouvez utiliser le/sinon syntaxe:
Si vous utilisez ÉTINCELLE 1.3.0 vous pouvez choisir d'utiliser un UDF:
Spark 1.5.0: vous pouvez également utiliser la syntaxe SQL expr fonction
ou de la plaine de l'étincelle-sql
J'ai trouvé ceci:
https://issues.apache.org/jira/browse/SPARK-3813
A fonctionné pour moi sur la spark 2.1.0:
J'ai été à la recherche pour longtemps, voici donc l'exemple d'ÉTINCELLE 2.1 JAVA avec le groupe par - pour les autres utilisateurs java.