from pyspark.sql.functions import * ghj=finalDF.withColumn("temp", explode(split(regexp_replace(to_json(struct(col("sum(P0)"), col("sum(P1)"), col("sum(P2)"), col("sum(P3)"), col("sum(P4)"), col("sum(P5)"))),"""[\{"\}]""",""), ","))) .withColumn("Priority", split(col("temp"),":")[0]) .withColumn("Count", split(col("temp"),":")[1]).select(col("NAME"), col("SHORT_DESCRIPTION"), col("Priority"), col("Count")).show()
3 Réponses :
Vous ne pouvez pas simplement continuer une instruction Python à la ligne suivante. Vous avez besoin d'un Assurez-vous qu'il n'y a pas d'autres symboles (même des espaces) après le \ code> à la fin de chaque ligne qui a une continuation:
\ code>. p> p>
Essayez avec \ code> pour déplacer les données sur la nouvelle ligne
ghj = finalDF.withColumn("temp", explode(split(regexp_replace(to_json(struct(col("sum(P0)"), col("sum(P1)"), col("sum(P2)"), col("sum(P3)"), col("sum(P4)"), col("sum(P5)"))),"""[\{"\}]""",""), ",")))\
.withColumn("Priority", split(col("temp"),":")[0])\
.withColumn("Count", split(col("temp"),":")[1]).select(col("NAME"), col("SHORT_DESCRIPTION"), col("Priority"), col("Count")).show()
comme alternative à la suggestion \ code>, vous pouvez également utiliser des parenthèses (note, pas de virgule):
Pouvez-vous formater votre code s'il vous plaît?
Bienvenue sur Stackoverflow, veuillez lire ce guide sur la façon de poser des questions.