Apache Pig 中的数学方程式

Mathematical Equation in Apache Pig

谁能帮我把下面的等式换成猪?

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

谢谢。

是的,你可以在 Pig 中做到这一点。您需要 piggybank.jar 的路径。那里有一堆数学函数。它通常位于安装 pig 的 lib 目录中。所以,我的在 /usr/local/pig/lib/piggybank.jar。这是所有功能的 docs (我认为这是旧版本 Pig 的 link 但参考这个问题应该没问题)。我猜你会和其中的变量 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)))));