是否可以检索RDD的模式并将其存储在变量中?因为我想使用相同的模式从另一个RDD创建一个新的数据框。例如,下面是我希望的内容:
val schema = oldDF.getSchema()
val newDF = sqlContext.createDataFrame(rowRDD, schema)
假设我已经rowRDD
格式为RDD[org.apache.spark.sql.Row]
,这有可能吗?
答案 0 :(得分:10)
只需使用schema
属性
val oldDF = sqlContext.createDataFrame(sc.parallelize(Seq(("a", 1))))
val rowRDD = sc.parallelize(Seq(Row("b", 2))
sqlContext.createDataFrame(rowRDD, oldDF.schema)