擅长:python、mysql、java
<p>我给你举个例子,我有两个关系a和B</p>
<p>A</p>
<pre><code>1,2,3
3,4,5
4,5,6
</code></pre>
<p>B</p>
^{pr2}$
<p>现在我需要一个pythonudf,它可以像下面这样查找打印输出的第一列。在</p>
<pre><code> ((1,{(1,2,3)}))
((2,))
((3,{(3,4,5)}))
((1,{(1,2,3)}))
((2,))
((3,{(3,4,5)}))
((1,{(1,2,3)}))
((2,))
((3,{(3,4,5)}))
</code></pre>
<p>所以首先我按第一列对A分组,然后按1分组,这样我就只有一行了</p>
<pre><code>c = group A by $0
e = group c by 1
</code></pre>
<p>pythonudf如下所示</p>
<pre><code>def pythonudf(value,map):
print map
temp = None
for a in map:
if a[0] == value:
temp = a[1]
return value,temp
</code></pre>
<p>现在你用这个自定义项</p>
<pre><code>D = foreach B generate myudf.pythonudf($0,e.$1);
</code></pre>