1

私は Apache Pig と Mahout を使用しています。現在、Apache mahout の頻繁なパターンの成長に取り組んでいます。次の形式のデータがあります

    user items
    1     i1
    1     i2
    1     i3
    2     i2
    2     i5
    2     i6
    3     i1
    3     i4

-- データをロードします

data = LOAD '$input' AS (user,item);

そして、データをユーザーごとにグループ化しました

grpdata = GROUP data BY user;

そして私は得る

1 {(1,i1),(1,i2),(1,i3)}
2 {(2,i2),(2,i5),(2,i6)}
3 {(3,i1),(3,i4)}

これが私の質問です。グループ化の結果として作成されたバッグを次の形式に変更するにはどうすればよいですか

1 i1,i2,i3
2 i2,i5,i6
3 i1,i4
4

2 に答える 2

0

を手に入れるために :

(i1,i2,i3)
(i2,i5,i6)
(i1,i4)

あなたはこれを行うことができます :

res = foreach grpdata generate FLATTEN(BagToTuple($1.item));
于 2014-04-24T10:27:49.500 に答える