关于DF转DS的问题

来源:5-3 text数据源读写案例

KelvinChung

2020-02-16

在老师之前的案例中,是通过定义一个case class,然后用as的方法来转的,要倒入隐式转换的包,但是在这节课的代码中,textDF是一个DF,map里面操作也是针对一个row操作呀,为什么可以返回一个Dataset类型的result呢?

val result:Dataset[(String,Int)] = textDF.map(x => {

  val split: Array[String] = x.getString(0).split(",")

  (split(0).trim, split(1).trim.toInt)

})
写回答

1回答

Michael_PK

2020-02-16

这是不同的实现方式呢,df进来的数据类型是row类型,如果你想要对row里面的东西进行处理那么就需要getString(0)去获取到里面的字符串的具体内容

0
3
KelvinChung
非常感谢!
2020-02-17
共3条回复

SparkSQL入门 整合Kudu实现广告业务数据分析

大数据工程师干货课程 带你从入门到实战掌握SparkSQL

535 学习 · 192 问题

查看课程