Quelqu'un peut-il s'il vous plaît partager comment on peut convertir un dataframe
en un RDD
?
Simplement:
val rows: RDD[Row] = df.rdd
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.
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