-2
votes

IndendationError: indent inattendu dans les cours de données et Pyspark

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()

2 commentaires

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.


3 Réponses :


2
votes

Vous ne pouvez pas simplement continuer une instruction Python à la ligne suivante. Vous avez besoin d'un \ à la fin de chaque ligne qui a une continuation: xxx

Assurez-vous qu'il n'y a pas d'autres symboles (même des espaces) après le \ .


0 commentaires

0
votes

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()


0 commentaires

1
votes

comme alternative à la suggestion \ , vous pouvez également utiliser des parenthèses (note, pas de virgule): xxx


0 commentaires