Ошибка при объединении двух массивов в столбце данных Spark - PullRequest
0 голосов
/ 05 октября 2018

Я работаю с фреймом данных, который содержит два массива, которые я хочу получить из этих двух массивов:1005 *

val schema=df.select("data1").schema
val concatArray = udf ({ (x: Seq[Row], y: Seq[Row]) => x ++ y}, schema)

при применении udf я получаю эту ошибку

org.apache.spark.SparkException: Failed to execute user defined function($anonfun$11: (array<struct<k:struct<v:string,t:string>,resourcename:string,criticity:string,v:string,vn:double>>, array<struct<k:struct<v:string,t:string>,resourcename:string,criticity:string,v:string,vn:double>>) => struct<data1:array<struct<k:struct<v:string,t:string>,resourcename:string,criticity:string,v:string,vn:double>>>)

любые предложения, пожалуйста

1 Ответ

0 голосов
/ 05 октября 2018

Неверный способ предоставления схемы.Схема для одного столбца DataFrame

df.select("data1").schema

отличается от схемы самого столбца.Вместо этого вы должны использовать схему поля:

val schema = df.schema("data1").dataType
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...