2017-11-03 2 views
-2

Ich verwende Funke 2.2 mit Java 8. Ich habe einen Datensatz in ROWTYPE und ich möchte verwendet, um dieses Datenmenge in den ML-Modell konvertieren, so möchte ich Dataset in Dataset konvertieren, wenn ich Datensatz verwendet In das Modell wird der Fehler unten angezeigt.wie Dataset Row Typ Dataset String Typ

Typenkonflikt: kann nicht von Datensatz zu Datensatz konvertiert

I für scala unten Lösung gern, aber ich möchte dies in Java tun.

df.map(row => row.mkString()) 
val strings = df.map(row => row.mkString()).collect 

Antwort

3

konvertieren Sie zuerst Row-Dataset in Liste und dann diese Liste in String-Dataset konvertieren. Versuchen Sie, diese

Dataset<Row> df= spark.read()... 
List<String> list = df.as(Encoders.STRING()).collectAsList(); 
Dataset<String> df1 = session.createDataset(list, Encoders.STRING());