2016-12-22 12 views
0

私はスパークを学び始めたばかりです。
sparkがインストールされていて、ターミナルで実行することができます( "./bin/pyspark"による)。
しかし、私は、次の例(ワードカウント)をしようとするが失敗:pysparkの単語カウントの例を実行しています

path = os.path.join("sample-text.txt") 
with open(path, "w") as testFile: 
    _ = testFile.write("Hello world Hello") 

file = sc.textFile(path) 
counts = file.flatMap(lambda line: line.split(" ")) \ 
      .map(lambda word: (word, 1)) \ 
      .reduceByKey(lambda a, b: a + b) 

path2 = os.path.join("word-count.txt") 
counts.saveAsTextFile(path2) 

すべてが通過したが、私は、出力ワードcount.txtファイルを開こうとしたとき、それは、このドキュメントを開くことができないと言います。
何が間違っていますか?

答えて

1

私はそれはword-count.txtという名前のディレクトリではなく、ファイルを作成し、出力ワード-count.txtファイル

をオープンしようとしていました。

$ ls word-count.txt 
_SUCCESS part-00000 part-00001 part-00002 
$ cat word-count.txt/part-00000 
(u'world', 1) 
$ cat word-count.txt/part-00001 
(u'Hello', 1) 
(u'hello', 1) 

コードが機能します。ご使用のOSには、ディレクトリの作成/開けを妨げる他のアクセス権の問題があります。

関連(scala、でも同じ考え) - how to make saveAsTextFile NOT split output into multiple file?

+0

ありがとう!これは参考になります。 –

+0

ようこそ。問題が解決した場合は、投稿の横にあるチェックマークを使用して回答を受け入れてください。 –

関連する問題