我有兩個豬關係。第一個count_pairs
顯示了一對單詞和它們被看到的次數。 ex ((car,tire), 4)
。第二個是word_counts
,它跟蹤每個單詞被看到的次數。 (car, 20)
。我希望找到每對看到多少次的百分比,而不是看到第一個單詞的次數。在我們的情況下,我想要((car,tire), 4/20)
。我試着寫一個嵌套的foreach來解決這個問題:在PIG中使用嵌套FOREACH過濾器
> percent_count_pairs = FOREACH count_pairs {
> denom = FILTER word_counts BY ($0 ==count_pairs.pair.word1);
> GENERATE pair, count2/(double)denom.$1;}
我不斷收到此錯誤:
'Pig script failed to parse:
<file src/cluster.pig, line 27, column 15> expression is not a project expression: (Name: ScalarExpression) Type: null Uid: null)'
這一點與FILTER
行; 使用谷歌搜索這個錯誤並沒有導致我對任何有用的東西。請幫忙! (PS。如果我採取與FILTER
行出的foreach這樣做工作...)
難道你不能用ORDER和LIMIT命令獲得同樣的結果嗎? – ElKamina