0

私はこのようなタプルを持っています:

((item114,),1)
((item32,item31,),1)
((item81,item27,),2)

最後の数字はアイテムの頻度であるため、item114には頻度があります。1の場合、アイテム81には周波数があります。2の場合、これを次の形式のタプルに分割したい:(item#、freq。)、結果は次のようになります。

 (item114, 1)
 (item32, 1)
 (item31, 1)
 (item81, 2)
 (item27, 2)

どうやってやるの?ありがとう。

4

1 に答える 1

1

基本的に関係を平坦化することができます。これにより、目的のタプルが得られます。たとえば、Cに上記の関係を次のように記述させます。

C = GROUP input by A;

describe C;
C: {group: int, input: {i: int,j: int,k: int}}

dump C;
({(item114,)},1)

d = foreach c generate group, flatten(a.i);

describe d;
d: {group: int,i::i: int}

dump d;
(item114, 1)
(item32, 1)
于 2011-04-18T04:32:23.743 に答える