2017-02-01 4 views
0

Ich habe 3 Datenrahmen erstellt und jetzt möchte ich ihnen beitreten. Allerdings bin ich in diesen Fehler ausgeführt wird: NoSuchMethodError: org.apache.spark.rdd.RDD.mapPartitionsInternal$default$2()ZData Frame Join Fehler

Hier ist der Code:

val join1 = c1_df.join(ck_df, ck_df.col("APP_ID") === c1_df.col("ID")) 

val joinFinal = join1.join(c2_df, c2_df.col("APP_ID") === join1.col("APP_ID")) 

joinFinal.show() 

Antwort

1

die folgenden Ausschnitt ohne Probleme funktioniert. Sind Sie sicher c1_df, ck_df und c2_df sind gültige Datenrahmen? Dies könnte möglicherweise auch ein Problem bei der Installation von Spark-Versionseinstellungen sein. Stellen Sie sicher, dass Sie die richtige Version von Spark verwenden und Ihre SPARK_HOME-Variable entsprechend festgelegt ist.

val c1_df = sc.parallelize((1 to 10)).toDF("ID") 
val ck_df = sc.parallelize((1 to 10)).toDF("APP_ID") 
val c2_df = sc.parallelize((1 to 10)).toDF("APP_ID") 
val join1 = c1_df.join(ck_df, ck_df.col("APP_ID") === c1_df.col("ID")) 
val joinFinal = join1.join(c2_df, c2_df.col("APP_ID") === join1.col("APP_ID")) 
joinFinal.show() 
+---+------+------+ 
| ID|APP_ID|APP_ID| 
+---+------+------+ 
| 1|  1|  1| 
| 6|  6|  6| 
| 3|  3|  3| 
| 5|  5|  5| 
| 9|  9|  9| 
| 4|  4|  4| 
| 8|  8|  8| 
| 7|  7|  7| 
| 10| 10| 10| 
| 2|  2|  2| 
+---+------+------+ 
+0

Vielen Dank für diesen Blick. Die 3 Datenrahmen funktionieren und ich kann den Inhalt sehen. Aber wenn ich den Join mache, dann stoße ich auf das Problem. – SFatima