所以我有一个名为ngram_df的火花数据框看起来像这样
--------------------------------
Name | nGrams |
--------|--------------------- |
Alice | [ALI, LIC, ICE] |
Alicia | [ALI, LIC, ICI, CIA] |
--------------------------------
我希望以字典形式生成输出,例如:
ALI:2,LIC:2,ICE:1,ICI:1,CIA:1
我一直试图将nGrams列变成RDD,以便我可以使用reduceByKey函数
rdd = ngram_df.map(lambda row: row['nGrams'])
test = rdd.reduceByKey(add).collect()
然而我收到错误:
ValueError:要解压缩的值太多
在我收到错误时,即使使用flatmap也没有帮助:
ValueError:解包需要多于1个值
答案 0 :(得分:0)
这可以通过flatMap和reduceByKey方法的组合实现。
to_char