2016-07-01 13 views
-1

Der Code-Snippet ich auszuführen versuche:Funke: Fehler: Wert Split ist kein Mitglied von org.apache.spark.rdd.RDD [Zeichenfolge]

val textfile = sc.textFile("small_file.txt") 
      val arr = textfile.split(",") 
      for (v <- arr) { 
       println(v) 

Die Pakete, die ich eingeschlossen:

import org.apache.spark.SparkContext 
import org.apache.spark.SparkConf 
import org.apache.spark.SparkContext._ 
import org.apache.spark.rdd.RDD._ 
import org.apache.spark.rdd.RDD 

Der Fehler, ich habe:

<console>:54: error: value split is not a member of org.apache.spark.rdd.RDD[String] 
       val arr = textfile.split(",") 
          ^

Jede Führung würde geschätzt !!

+2

Bitte lesen Sie einige Dokumentation! Funken nicht massakrieren. Solche Beispiele finden Sie auf der offiziellen Dokumentationsseite. Wenn du ein bisschen nach dem Thema geforscht hättest, hättest du die Antwort gefunden. – eliasah

Antwort

2

Er sagt klar, dass Split ist nicht die Methode der RDD. Wenn Sie also die Daten innerhalb der Textdatei auf Basis von "," aufteilen möchten, müssen Sie die Kartenfunktion von RDD verwenden.

textfile.map(line=>line.split(",")) 

Für weitere Informationen können Sie das Beispiel der Wortzählung hier sehen.

http://spark.apache.org/examples.html

-3
val textfile = sc.textFile("small_file.txt") 

variable Textdatei ist RDD [Zeichenfolge] und nicht die Zeichenfolge, und das ist, warum Sie Ausnahme als Split-Methode erhalten wird, nicht Mitglied von RDD [Zeichenfolge], wenn Sie also Inhalte von Textdatei drucken haben, können Sie

verwenden
textfile.foreach(println) (shorter version) 

oder

textfile.foreact(x => println(x)) (longer version) 

Dank

+0

Dies ist auf keiner Ebene korrekt und beantwortet auch nicht die Frage des OP. – eliasah

Verwandte Themen