2017-06-13 1 views
0

私は豚ラテンの初心者です。私は以下のファイルを処理し、最も発生した単語を数えたかったのです。豚を使用してカスタム区切り記号(|)で単語をカウント

ハイドープ|オープンソース| Javaベース|プログラミング|フレームワーク|それ|サポート| |分散型|コンピューティング|環境内の|極端に大きな|データ|集合|の処理|および記憶| |

ファイルには、区切り文字として|が含まれています。

答えて

0

そこにはいくつかの例があります。いずれにしても、区切り文字 '|'

lines = LOAD 'input.txt' AS (line:chararray); 
newlines = FOREACH lines GENERATE REPLACE(line,'\\|',' ') AS newline; 
words = FOREACH newlines GENERATE FLATTEN(TOKENIZE(newline)) as word; 
grouped = GROUP words BY word; 
w_count = FOREACH grouped GENERATE group, COUNT(words); 
DUMP w_count; 
+1

@inquistive_mindあなたはエスケープすることができます。 \\によって 'newlines = FOREACH lines GENERATE REPLACE(行、 '\\ |'、 '')AS改行' – Mahi

+0

@Mahi Ah!あなたは正しい。アップデートされた。 –

関連する問題