0
如何将数据框转换为RDD [字符串,字符串]?如何将数据框转换为RDD [字符串,字符串]?
我有一个数据帧
df : [id : String, coutry :String, title: String]
如何做我将它转换为RDD [字符串,字符串]其中第一列是由剩余的列将是价值键和JSON字符串?
key : id
value : {coutry: "US", title : "MK"}
如何将数据框转换为RDD [字符串,字符串]?如何将数据框转换为RDD [字符串,字符串]?
我有一个数据帧
df : [id : String, coutry :String, title: String]
如何做我将它转换为RDD [字符串,字符串]其中第一列是由剩余的列将是价值键和JSON字符串?
key : id
value : {coutry: "US", title : "MK"}
你不能有一个RDD[String, String]
。 RDD只需要1 type parameter
,所以你想要的是RDD[(String, String)]
。
df.rdd
.map(row => {
val id = row.getString(0)
val country = row.getString(1)
val title = row.getString(2)
val jsonString = s"{country: $country, title: $title}"
(id, jsonString)
})
有DataFrame.toJSON返回一个RDD [字符串],基于这种方法,你可以做你自己改造
将它的工作即使行有地图 –
Newbie
一个'dataframe'有一个内在的'RDD [行]'其工作方式的实际数据持有人。如果你的'dataframe'就像你提供的那样,那么底层'rdd'的每个'Row'都会有这三个字段。如果你的'dataframe'结构不同,你应该可以相应地进行调整。 –