Créer DataFrame de la liste de tuples à l'aide de pyspark
Je suis en train de travailler avec des données extraites de SFDC à l'aide de simples salesforce paquet.
J'utilise Python3 pour l'écriture de scripts et de susciter 1.5.2.
J'ai créé un rdd contenant les données suivantes:
[('Id', 'a0w1a0000003xB1A'), ('PackSize', 1.0), ('Name', 'A')]
[('Id', 'a0w1a0000003xAAI'), ('PackSize', 1.0), ('Name', 'B')]
[('Id', 'a0w1a00000xB3AAI'), ('PackSize', 30.0), ('Name', 'C')]
...
Ces données est en RDD appelé v_rdd
Mon schéma ressemble à ceci:
StructType(List(StructField(Id,StringType,true),StructField(PackSize,StringType,true),StructField(Name,StringType,true)))
Je suis en train de créer DataFrame de ce RDD:
sqlDataFrame = sqlContext.createDataFrame(v_rdd, schema)
J'ai l'impression de mes DataFrame:
sqlDataFrame.printSchema()
Et d'obtenir les éléments suivants:
+--------------------+--------------------+--------------------+
| Id| PackSize| Name|
+--------------------+--------------------+--------------------+
|[Ljava.lang.Objec...|[Ljava.lang.Objec...|[Ljava.lang.Objec...|
|[Ljava.lang.Objec...|[Ljava.lang.Objec...|[Ljava.lang.Objec...|
|[Ljava.lang.Objec...|[Ljava.lang.Objec...|[Ljava.lang.Objec...|
Je m'attends à des données réelles, comme ceci:
+------------------+------------------+--------------------+
| Id|PackSize| Name|
+------------------+------------------+--------------------+
|a0w1a0000003xB1A | 1.0| A |
|a0w1a0000003xAAI | 1.0| B |
|a0w1a00000xB3AAI | 30.0| C |
Pouvez-vous svp m'aider à identifier ce que je fais de mal ici.
Mon script Python est longue, je ne suis pas sûr que ce serait pratique pour les gens à parcourir, donc je l'ai posté uniquement les pièces, je vais avoir des problème avec.
Merci une tonne à l'avance!
Vous devez vous connecter pour publier un commentaire.
Hey pourriez-vous la prochaine fois fournir un exemple. Ce serait plus facile.
La façon dont vos RDD est présenté est fondamentalement bizarre de créer un DataFrame. C'est une façon de créer un DF selon l'Étincelle de la Documentation.
En ce qui concerne votre exemple, vous pouvez créer votre sortie désirée comme de cette façon:
Espère que cette aide