2016-11-15 80 views
-1

我想有一個豬腳本在不同的條件過濾行:豬:過濾行條件

i2 = GROUP i1 ALL; 

i3 = FOREACH i2 GENERATE AVG(i1.user_followers_count) AS avg_user_followers_count, AVG(i1.avl_user_total_retweets) AS avg_avl_user_total_retweets, AVG(i1.avl_user_total_likes) AS avg_avl_user_total_likes, AVG(i1.avl_user_total_replies) AS avg_avl_user_total_replies, AVG(i1.avl_user_engagements) AS avg_avl_user_engagements; 

top = FILTER i1 BY (user_followers_count > i3.avg_user_followers_count) AND (avl_user_engagements > i3.avg_avl_user_engagements) AND (avl_user_total_retweets > i3.avg_avl_user_total_retweets) AND (avl_user_total_likes > i3.avg_avl_user_total_likes) AND (avl_user_total_replies > i3.avl_user_total_replies); 

bot = FILTER i1 BY (user_followers_count < i3.avg_user_followers_count) AND (avl_user_engagements < i3.avg_avl_user_engagements) AND (avl_user_total_retweets < i3.avg_avl_user_total_retweets) AND (avl_user_total_likes < i3.avg_avl_user_total_likes) AND (avl_user_total_replies < i3.avl_user_total_replies); 

這是我撿的一切,是在爲top各個方面高於平均水平,一切是低於平均水平每一個方面爲bottom

現在我想要得到的剩餘行(即一切混合,即高於平均水平,少數低於平均水平的幾個方面)過濾topbot到另一個別名後調用med。我怎麼做?

回答

0

使用SPLIT

SPLIT i1 INTO 
    top IF((user_followers_count > i3.avg_user_followers_count) AND (avl_user_engagements > i3.avg_avl_user_engagements) AND (avl_user_total_retweets > i3.avg_avl_user_total_retweets) AND (avl_user_total_likes > i3.avg_avl_user_total_likes) AND (avl_user_total_replies > i3.avl_user_total_replies)), 
    bot IF((user_followers_count < i3.avg_user_followers_count) AND (avl_user_engagements < i3.avg_avl_user_engagements) AND (avl_user_total_retweets < i3.avg_avl_user_total_retweets) AND (avl_user_total_likes < i3.avg_avl_user_total_likes) AND (avl_user_total_replies < i3.avl_user_total_replies)), 
    med OTHERWISE; 
+0

謝謝,不知道'OTHERWISE'是正確的語法。我有一些記錄,當我使用此代碼丟失。 – kskp

+0

'輸入(S): 「/用戶/ alenza/VIRTUA/marketanalysis /數據/結果/ analysis_name/tweets_combined /用戶」' '輸出(詞): 成功地從讀165個記錄(362590個字節)成功地存儲0個記錄(815個字節)中: 「/ TMP/inf_med」 成功地存儲1條在記錄(163個字節): 「/ TMP/inf_top」 成功存儲113個記錄(18068個字節)中: 「/ TMP/inf_bot」 ' – kskp

+0

上面寫着165分的記錄,但只寫了114條記錄。 – kskp