eclipse - 为什么 Eclipse 认为 df.as[CaseClass] 是 Scala Spark 程序中的错误?
问题描述
我正在尝试使用语法将数据框转换为数据集
case class Schema(...)
val ds = df.as[Schema]
所以我的代码看起来像
case class Rule(rule_on: String, rule_operator: String, rule_value: Int, rule_name: String)
val rules_ds = rules_df
.select("rule_on", "rule_operator", "rule_value", "rule_name")
.as[Rule]
但日食突出显示.as[Rule]
为错误。屏幕截图与下面相同。
如何解决这个问题?我知道这不是 Scala 问题,因为它可以在命令行上运行。环境(如在 Eclipse 中):
- 斯卡拉 - 2.11.11
- 火花 - 2.4.0
- JRE - 1.8
解决方案
正如Raphael Roth所建议的(在评论中),我在 main 方法之外定义了案例类,它就像魅力一样工作。
其他解决方案(不使用案例类)也是将数据帧类型转换为数据集,如下所示
import org.apache.spark.sql._
val ds: Dataset[Row] = df
上述解决方案取自这里
推荐阅读
- php - imagettfbbox 似乎不正确
- angular - using components of shared module in the others module for angular 4
- ruby-on-rails - 在 Rails 应用程序中更改 localhost 端口号
- r - 使用带有 stat_summary 的 log2 传输
- arrays - 填充 UITableViewController
- c# - 向 asp net core 1.0 web 应用程序添加分页功能
- php - Websocket 棘轮
- angular - How to show the closed messages section even though there are no conversations using angular2
- machine-learning - ML 预测输入参数
- react-native - Firestore - iOS 反应原生应用程序在离线模式下工作