2015-10-19 95 views
-1

任何人都可以帮我把下面的公式转换成Pig?Apache Pig中的数学公式

((score + score2)/3)*(1+(5/(10*sqrt(power((score - score2),2)+1))))​ 

谢谢。

+0

你是什么意思转换?你有什么尝试? –

+0

这是一个postgre的查询,我试过在配置单元中工作,但在配置单元中说,错误1070:无法使用导入解析电源:[,java.lang。,org.apache.pig.builtin。,org.apache.pig .im pl.builtin。] – Maharaj

回答

1

雅你可以在猪身上做到这一点。您需要找到您的piggybank.jar的路径。那里有一堆数学函数。它通常在lib目录中,只要你安装了猪。所以,我的是/usr/local/pig/lib/piggybank.jar。这里是docs所有功能(我认为这是链接到老版本的猪,但它应该没关系引用这个问题)。我想你会和变量scorescore2有关系。我们将调用关系A

REGISTER '/path/to/pig/piggybank.jar' 
DEFINE SQRT org.apache.pig.piggybank.evaluation.math.SQRT; 
DEFINE POW org.apache.pig.piggybank.evaluation.math.POW; 

/** 
* You'll probably want to import some data here 
*/ 

B = FOREACH A GENERATE ((score + score2)/3)*(1+(5/(10*SQRT(1+POW((score - score2), 2))))); 
+0

嘿感谢的人这就是我完全尝试,它的工作。 :d – Maharaj