I don't think you want to do that. You get a string representation of structured data without the structure, at best. This is part of the reason it doesn't work directly this way. You can use a UDF to call .toString on the Row of course, but, again what are you really trying to do?
On Sat, Jun 4, 2022 at 7:35 AM marc nicole <mk1853...@gmail.com> wrote: > Hi, > How to convert a Dataset<Row> to a Dataset<String>? > What i have tried is: > > List<String> list = dataset.as(Encoders.STRING()).collectAsList(); > Dataset<String> datasetSt = spark.createDataset(list, Encoders.STRING()); > // But this line raises a org.apache.spark.sql.AnalysisException: Try to > map struct... to Tuple1, but failed as the number of fields does not line > up > > Type of columns being String > How to solve this? >