【发布时间】:2016-02-25 08:11:29
【问题描述】:
在我加载一个 json 文件后:
df = sqlContext.read().json(path);
我将在 Java Spark 中获取我的 DataFrame。例如,我有下一个 DF:
id item1 item2 item3 ....
id1 0 3 4
id2 1 0 2
id3 3 3 0
...
我想以最简单的方式将其转换为(可能是 Rating 类的 Object,然后通过 .hashCode() 转换为 Integer)
id item ranking
id1 item1 0
id1 item2 3
id1 item3 4
....
id2 item1 1
id2 item2 0
id1 item1 2
...
PS 首次尝试创建 flatMap 函数:
void transformTracks() {
JavaRDD<Rating> = df.flatMap(new Function<Row, Rating>(){
public Rating call(Row r) {
for (String i : r) {
return Rating(1, 1, r.apply(Double.parseDouble(i)));
}
}
})
}
【问题讨论】:
-
我在想
flatMap会成功吗? -
@Glennie Helles Sindhoit,对不起,我是 Java Spark 的新手,你能举个例子吗?
标签: java apache-spark