在小练习 RDD 上使用 .filter 和 .collect 打印所有以 'h' 开头的单词(pyspark 初学者)

Using .filter and .collect on small practice RDD to print all words beginning with 'h' (pyspark beginner)

我刚开始学习如何在 Jupyternotebook 和初学者编码器上使用 pyspark。

为了试水,我创建了这个数组: 单词 = ['hey', 'how', 'are', 'you']

然后这个RDD: wordRDD = spark.sparkContext.parallelize([word])

我现在正在尝试在 wordRDD 上使用 .filter 和 .collect 来打印所有以 'h' 开头的单词,但无法找到解决方案。有人有什么想法吗?

据我所知:

word = ['hey', 'how', 'are', 'you']
wordRDD = spark.sparkContext.parallelize([word])

print(wordRDD.filter.map(lambda x=x: x in wordRDD if x[0] == "h").collect())

你快到了,函数调用是RDD.filter:

words = ['hey', 'how', 'are', 'you']
wordRDD = spark.sparkContext.parallelize(words)

filterRDD = wordRDD.filter(lambda word: word.startswith("h"))
print(filterRDD.collect())