我想将DataFrame转换为case类的Dataset。在我的数据集[Product]中的示例中。我在网站上做了很多研究,但没有找到好的解决方案。
我的SparkSession:
lazy val sparkSession: SparkSession =
SparkSession.builder().config(conf).getOrCreate()
我的案例课:
case class Product(product_category: Int,
product_name: String
)
治疗:
import sparkSession.implicits._
df.select($"product_category",$"product_name").as[Product]
就我而言,使用 sparkSession.implicits ._ 对解决此错误没有影响:
Error: (33, 31) Unable to find encoder for type Product. An implicit Encoder[Ex2Amount] is needed to store Product instances in a Dataset. Primitive types (Int, String, etc) and Product types (case classes) are supported by importing spark.implicits._ Support for serializing other types will be added in future releases.
如何处理正确的错误?
感谢您的帮助。