博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
spark DataSetHolder.toDF 的问题
阅读量:5240 次
发布时间:2019-06-14

本文共 981 字,大约阅读时间需要 3 分钟。

有个朋友给了这样一段代码:

import org.apache.spark.sql.SparkSessionimport org.apache.spark.ml.linalg.{Vector, DenseVector}object HRDT {  def main(args : Array[String]) {    case class HRMeta(features:Vector, label:String)    val spark = SparkSession.builder()...    import spark.implicits._    val data = spark.sparkContext.textFile("...")        .map(l=>{          ...           new HRMeta(new DenseVector(Array(1.0,2.0)), "0")        }).toDF()  }}

编译的时候会报错:

[error] /data1/weibo_recmd/story/ctr_predict/code/HRDT.scala:18:12: value toDF is not a member of org.apache.spark.rdd.RDD[HRMeta][error] possible cause: maybe a semicolon is missing before `value toDF'?[error]         }).toDF()[error]            ^[error] one error found[error] (Compile / compileIncremental) Compilation failed[error] Total time: 12 s, completed Feb 9, 2018 1:50:13 PM

 

但如果把 case class 定义放到main方法外面,编译就没问题。

 

我猜测和DataSetHolder.toDF时候在scala里面对泛型的使用有关系,但没仔细调查验证。在此暂存一下

 

转载于:https://www.cnblogs.com/jimtheman/p/8435218.html

你可能感兴趣的文章
绕啊绕的递归函数
查看>>
杭电2016 数据的交换输出
查看>>
vue+sass 下sass不能运行问题
查看>>
struts 的应用
查看>>
磁盘测试工具
查看>>
mysql格式化整数类型时间生成年月日时分秒格式(long或string接收)
查看>>
eclipse查看jdk及maven依赖包源码
查看>>
[HDU]3371 Connect the Cities
查看>>
那些年我们刷过的手机
查看>>
python--数据类型--1
查看>>
在ros中使用rplidar Laser发布scan数据--25
查看>>
Linux网络IO函数以及TCP连接函数包装
查看>>
用Spring Boot去创建web service
查看>>
简单计算器
查看>>
JavaScript 开发的45个经典技巧
查看>>
apiCloud 上拉加载
查看>>
iOS阶段学习第30天笔记( UIViewController—Delegate(代理) )
查看>>
Entity Framework 实体框架的形成之旅--为基础类库接口增加单元测试,对基类接口进行正确性校验(10)...
查看>>
扩展欧几里得
查看>>
代码变量、函数命名神奇网站
查看>>