Spark: scala.MatchError (of class org.apache.spark.sql.catalyst.expressions.GenericRowWithSchema

Posted 宝哥大数据

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spark: scala.MatchError (of class org.apache.spark.sql.catalyst.expressions.GenericRowWithSchema相关的知识,希望对你有一定的参考价值。

在dataframe转为rdd


// 造源数据
val data = List( ("Jen","male",18))  
val df = spark.createDataFrame(data) 

import org.apache.spark.sql.Row
// dataframe转为rdd
val result = df.rdd.mapcase Row(name: String, age: Integer) => (name, age)

result.collect()

报错

Caused by: scala.MatchError: [Jen,male,18] (of class org.apache.spark.sql.catalyst.expressions.GenericRowWithSchema)

问题原因: 字段数量不一致,导致转化类型错误

改正:

以上是关于Spark: scala.MatchError (of class org.apache.spark.sql.catalyst.expressions.GenericRowWithSchema的主要内容,如果未能解决你的问题,请参考以下文章

线性回归 scala.MatchError:

Scala 的位置:MatchError

scala.MatchError:某个时间点之后的所有请求都为空

scala.MatchError:运行sbt命令时为10

Some(null) 到 Stringtype 可为空的 scala.matcherror

使用 Shell 脚本文件提交 Spark 作业