我和ApachePig和马霍特一起工作。现在我正在研究apachemahout的频繁模式增长。我有以下格式的数据
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
2条答案
按热度按时间a8jjtwal1#
您可以使用包投影获得感兴趣的字段:
这会给你
不幸的是,没有内置的功能来摆弄将包序列化为字符串的方式。你将需要写一个自定义项,为你做这一块。
s4chpxco2#
为了获得:
您可以这样做: