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'結構不同,你應該可以相應地進行調整。 –