web-dev-qa-db-fra.com

Comment convertir DataFrame en RDD en Scala?

Quelqu'un peut-il s'il vous plaît partager comment on peut convertir un dataframe en un RDD?

38
Vajra

Simplement:

val rows: RDD[Row] = df.rdd
54
Jean Logeart

Utilisez df.map(row => ...) pour convertir le dataframe en RDD si vous souhaitez mapper une ligne sur un autre élément RDD. Par exemple

df.map(row => (row(1), row(2)))

vous donne un RDD apparié où la première colonne du df est la clé et la deuxième colonne du df est la valeur.

3
Random Certainty

Je cherchais juste ma réponse et j'ai trouvé ce post.

La réponse de Jean à corriger absolument, en ajoutant que "df.rdd" retournera un RDD [Rows]. Je dois appliquer split () une fois que je reçois RDD. Pour cela, nous devons convertir RDD [Row} en RDD [String]

val opt=spark.sql("select tags from cvs").map(x=>x.toString()).rdd
2
Ishan Kumar