2016-06-23 4 views

Odpowiedz

5

toDF() zajmuje powtarzającego parametr typu String, więc można użyć _* typu adnotacji zdać sekwencję:

val df=sc.parallelize(Seq(
    (1,"example1", Seq(0,2,5)), 
    (2,"example2", Seq(1,20,5)))).toDF(columns: _*) 

Więcej informacji o powtarzających się parametrach - patrz rozdział 4.6.2 w Scala Language Specification.

+1

Thanks..How określić typ danych wraz z kolumnami wewnątrz toDF()? – Devi

+0

Dzięki .... to właśnie szukam morre niż godzinę ,,, dzięki – Vicky

1
val df=sc.parallelize(Seq(
(1,"example1", Seq(0,2,5)), 
(2,"example2", Seq(1,20,5)))).toDF("column1", "column2", "column3") 

toDF() wykonuje przecinkami rozdzielone ciągi

1

toDF() jest zdefiniowana w Spark documentation jak:

def toDF(colNames: String*): DataFrame 

A więc trzeba włączyć swoją tablicę do varargs opisany jako też here. Oznacza to, że trzeba wykonać następujące czynności:

val columns=Array("column1", "column2", "column3") 
val df=sc.parallelize(Seq(
(1,"example1", Seq(0,2,5)), 
(2,"example2", Seq(1,20,5)))).toDF(columns: _*) 

(Dodaj: _ * do columns w toDF)

Powiązane problemy