我有textRDD: org.apache.spark.rdd.RDD[(String, String)]
我想将其转换为DataFrame。列对应于每个页面(行)的标题和内容。
答案 0 :(得分:1)
使用toDF()
,如果有,请提供列名称。
val textDF = textRDD.toDF("title": String, "content": String)
textDF: org.apache.spark.sql.DataFrame = [title: string, content: string]
或
val textDF = textRDD.toDF()
textDF: org.apache.spark.sql.DataFrame = [_1: string, _2: string]
shell自动导入(我使用的是1.5版),但在应用程序中可能需要import sqlContext.implicits._
。
答案 1 :(得分:0)
我通常会这样做:
创建一个这样的案例类:
case class DataFrameRecord(property1: String, property2: String)
然后您可以使用map使用案例类转换为新结构:
rdd.map(p => DataFrameRecord(prop1, prop2)).toDF()