'str'对象没有属性'flatMap'

时间:2017-08-30 17:21:34

标签: python pyspark

我对Python很陌生。我安装了一个带有PySpark内核的Anaconda3 - 4.4.0(Spark 2.2.0)。

我正在尝试使用Windows 7操作系统上的简单文本文件测试一个简单的脚本,以确保我的Python安装的某些功能正常工作。

这是我的剧本:

 word_counts = ('C:\\Users\\oakins1p\\WeeklyMeeting.txt') \
.flatMap(lambda line: line.split()) \
.map(lambda word: (word, 1)) \
.reduceByKey(lambda a, b: a + b)\
.saveAsTextFile('C:\\Users\\oakins1p\\WeeklyMeetingOutput.txt')\`

我一直在AttributeError: 'str' object has no attribute 'flatMap',我不知道如何解决这个问题。

2 个答案:

答案 0 :(得分:4)

word_counts是一个字符串,其中一个不只是在其上调用flatMap()

首先尝试使用textFile()读取文件,如下所示:

from pyspark import SparkContext
sc = SparkContext.getOrCreate()
word_counts = sc.textFile(filepath).flatMap()...

受此example启发。

答案 1 :(得分:1)

你忘了阅读文件。尝试使用SparkContext的textFile()函数。