Wenn ich ein Dataframe df so genannt wie folgt aussieht:Wie kann ich in DataFrame.withColumn den Wert der Spalte als Bedingung für den zweiten Parameter verwenden?
+---+---+
| a1+ a2|
+---+---+
|foo|bar|
|N/A|baz|
+---+---+
ich erwarten würde:
val df2 = df.withColumn("a1", when($"a1" == "N/A", $"a2))
, die aussehen würde dF2:
+---+---+
| a1+ a2|
+---+---+
|foo|bar|
|baz|baz|
+---+---+
sondern erhalte ich:
error: type mismatch;
found : Boolean
required: org.apache.spark.sql.Column
So klingt es wie ich brauche eine Methode von Column, die ihren Wert innerhalb einer DataFrame withColumn-Methode erzeugt.
Eine solche Sache oder ein anderer Ansatz, um den Ersetzungsparameter von withColumn durch den Wert der aktuellen Spalte bedingt aufzufüllen?
@psidom Sie es um 3 Sekunden zu schlagen ...: O –
@TzachZohar nur zeigt, dass ich immer meine Spark REPL laufen lassen sollte, dass die Startzeit den Unterschied gemacht haben könnte! –
Awesome Dank an euch beide - Bonus Frage dann, wie kommt === null scheint nicht zu funktionieren? – yoel