【发布时间】:2019-01-21 14:54:41
【问题描述】:
我有一个这样的数据框(df):
tweets
------
rain rain go away
train on the way
我的预期输出(任何格式都可以)
((rain,rain),1) ((rain,go),2) (rain,away),2) ((go,away),1)
((train,on),1) ((train,the),1) ((thain,way),1) ((on,the),1) ((on,way),1) ((the,way),1)
我将 df 转换为 RDD 以应用 map 和 reduceByKey 方法,但无法获得预期的结果。我可以轻松地将Array[((String, String), Int)] 结果转换为 df 但我需要帮助才能首先生成正确的结果。
2018 年 8 月 18 日更新
其实我最终的结果应该是这样一个DataFrame:
word1 word2 count
----- ----- -----
rain rain 1
rain go 2
rain away 2
go away 1
train on 1
train the 1
train way 1
on the 1
on way 1
the way 1
你能帮忙吗?可以注意到,所有答案都适用于小数据集,但当我将其应用于大量数据时会失败。
【问题讨论】:
标签: scala apache-spark-sql rdd word-count