Ich steige in Funke bin und ich habe Probleme mit Vektoren Import org.apache.spark.mllib.linalg {Vektoren, Vektor}Funken: Geben Sie einen Vektor
Der Eingang meines Programms ist eine Textdatei. mit der Ausgabe eines RDD (Vector) enthält: dataset.txt:
[-0.5069793074881704,-2.368342680619545,-3.401324690974588]
[-0.7346396928543871,-2.3407983487917448,-2.793949129209909]
[-0.9174226561793709,-0.8027635530022152,-1.701699021443242]
[0.510736518683609,-2.7304268743276174,-2.418865539558031]
Also, was einen Versuch zu tun:
val rdd = sc.textFile("/workingdirectory/dataset")
val data = rdd.map(s => Vectors.dense(s.split(',').map(_.toDouble)))
habe ich den Fehler, da es lesen [0,510736 518683609 als eine Nummer. Gibt es ein Formular, um den in der Textdatei gespeicherten Vektor ohne die zweite Zeile direkt zu laden? Wie kann ich "[" im Kartenstadium löschen? Ich bin wirklich neu in Funken, tut mir leid, wenn es eine sehr offensichtliche Frage ist.
Wie wäre es 'Tropfen (1) .dropRight (1) .split ("") Karte (. _ ToDouble)' oder 'val p =„- [0-9] + (?: \\. [0-9] +)? ". p.findAllIn (s) .map (_. toDouble) '? – zero323
Deshalb habe ich eine Richtung gesagt! :) – eliasah