如何使用rdd.sum()从pyspark的文本文件中查找RDD中特定单词的总数。

问题描述 投票:0回答:1
我有一个文本文件

123 Twinkle twinkle littlestar and moon 124 Twinkletwinkle little star and star 125 Twinkle twinkle littlestar and star 126 Twinkletwinkle little star and moon 127 Twinkle twinkle littlestar and moon 128 Twinkletwinkle little star and star 129 Twinkle twinkle littlestar 130 Twinkletwinkle little star

假设我想查找“星号”在文件中作为单词出现的次数,而不是像littlestar那样的子字符串出现的次数。而且某些行具有多种外观。我想在每一行中找到出现的字数,然后使用rdd.sum()
将其求和

rdd.filter(lambda x: "star" in x).count()

上面的代码给出了以星号作为单词或子串都为8的行数

我希望输出的方式可以在末尾执行以下操作

count_list=[0,2,1,1,0,2,0,1] #"star"counts in each line as word rdd=sc.parallelize(count_list) rdd.sum() >> 7

[我有一个文本文件123闪烁的小星星和月亮124闪烁的小星星和星星125闪烁的小星星和星星126闪烁的小星星和星星127闪烁的星星...
pyspark substring rdd
1个回答
0
投票
textFile = spark.read.text('sample.txt') textFile.rdd.map(lambda x: x[0].split(' ').count('star')).sum() 7
© www.soinside.com 2019 - 2024. All rights reserved.