comment créer DataFrame à partir de plusieurs tableaux dans Spark Scala?
val tvalues: Array[Double] = Array(1.866393526974307, 2.864048126935307, 4.032486069215076, 7.876169953355888, 4.875333799256043, 14.316322626848278)
val pvalues: Array[Double] = Array(0.064020056478447, 0.004808399479386827, 8.914865448939047E-5, 7.489564524121306E-13, 2.8363794106756046E-6, 0.0)
J'ai deux Tableaux ci-dessus, j'ai besoin de construire un DataFrame de ce Tableaux comme la suivante,
Tvalues Pvalues
1.866393526974307 0.064020056478447
2.864048126935307 0.004808399479386827
...... .....
Dès maintenant je suis en train d'essayer avec StringBuilder
en Scala. ce qui ne va pas comme prévu. aider moi s'il vous plaît.
OriginalL'auteur Sam | 2016-05-11
Vous devez vous connecter pour publier un commentaire.
Essayez par exemple
et donc
À l'aide de
parallelize
nous obtenons uneRDD
de tuples -- le premier élément du premier tableau, le deuxième élément de l'autre tableau --, qui se transforme en un dataframe de lignes, une ligne pour chaque tuple.Mise à jour
Pour dataframe avec plusieurs tableaux (tous de la même taille), par exemple 4 tableaux, envisager
val xs = Array(a1,a2,a3,a4).transpose
puis pour chaque tableau imbriqué construction de la classe de cas, la parallélisation des classes de cas et puis toDF(...).Désolé @orme, je ne suis pas le faire, pouvez-vous donner un exemple pour elle. pardonnez-moi, je suis nouveau à l'étincelle de la scala.
val xs = Array(a1,a2,a3,a4).transpose
`sc.paralléliser(xs(0) zip xs(1),xs(2), xs(3)).toDF("a","b","c","d")' . c'est le code que j'ai essayéMerci beaucoup @orme. elle fonctionne. 🙂
salut @orme, j'ai eu une erreur lors de l'exécution de ce code est une étincelle de l'application via spark-soumettre. mais il fonctionne très bien dans spark-shell. je ne comprends pas ce comportement?
OriginalL'auteur elm