You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by fa...@apache.org on 2022/05/26 22:47:07 UTC
svn commit: r1901300 - in /poi/trunk/poi/src/main/java/org/apache/poi/ss/formula: eval/FunctionEval.java functions/AggregateFunction.java
Author: fanningpj
Date: Thu May 26 22:47:07 2022
New Revision: 1901300
URL: http://svn.apache.org/viewvc?rev=1901300&view=rev
Log:
add VARPA and STDEVPA functions
Modified:
poi/trunk/poi/src/main/java/org/apache/poi/ss/formula/eval/FunctionEval.java
poi/trunk/poi/src/main/java/org/apache/poi/ss/formula/functions/AggregateFunction.java
Modified: poi/trunk/poi/src/main/java/org/apache/poi/ss/formula/eval/FunctionEval.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi/src/main/java/org/apache/poi/ss/formula/eval/FunctionEval.java?rev=1901300&r1=1901299&r2=1901300&view=diff
==============================================================================
--- poi/trunk/poi/src/main/java/org/apache/poi/ss/formula/eval/FunctionEval.java (original)
+++ poi/trunk/poi/src/main/java/org/apache/poi/ss/formula/eval/FunctionEval.java Thu May 26 22:47:07 2022
@@ -336,8 +336,8 @@ public final class FunctionEval {
retval[361] = AggregateFunction.AVERAGEA;
retval[362] = MinaMaxa.MAXA;
retval[363] = MinaMaxa.MINA;
- // 364: STDEVPA
- // 365: VARPA
+ retval[364] = AggregateFunction.STDEVPA;
+ retval[365] = AggregateFunction.VARPA;
retval[366] = AggregateFunction.STDEVA;
retval[367] = AggregateFunction.VARA;
Modified: poi/trunk/poi/src/main/java/org/apache/poi/ss/formula/functions/AggregateFunction.java
URL: http://svn.apache.org/viewvc/poi/trunk/poi/src/main/java/org/apache/poi/ss/formula/functions/AggregateFunction.java?rev=1901300&r1=1901299&r2=1901300&view=diff
==============================================================================
--- poi/trunk/poi/src/main/java/org/apache/poi/ss/formula/functions/AggregateFunction.java (original)
+++ poi/trunk/poi/src/main/java/org/apache/poi/ss/formula/functions/AggregateFunction.java Thu May 26 22:47:07 2022
@@ -265,6 +265,20 @@ public abstract class AggregateFunction
return StatsLib.stdev(values);
}
};
+ public static final Function STDEVPA = new AggregateFunction() {
+ @Override
+ protected boolean handleLogicalValues() {
+ return true;
+ }
+
+ @Override
+ protected double evaluate(double[] values) throws EvaluationException {
+ if (values.length < 1) {
+ throw new EvaluationException(ErrorEval.DIV_ZERO);
+ }
+ return StatsLib.stdevp(values);
+ }
+ };
public static final Function SUM = new AggregateFunction() {
protected double evaluate(double[] values) {
return MathX.sum(values);
@@ -296,7 +310,7 @@ public abstract class AggregateFunction
protected boolean handleLogicalValues() {
return true;
}
-
+
@Override
protected double evaluate(double[] values) throws EvaluationException {
if (values.length < 1) {
@@ -305,6 +319,20 @@ public abstract class AggregateFunction
return StatsLib.var(values);
}
};
+ public static final Function VARPA = new AggregateFunction() {
+ @Override
+ protected boolean handleLogicalValues() {
+ return true;
+ }
+
+ @Override
+ protected double evaluate(double[] values) throws EvaluationException {
+ if (values.length < 1) {
+ throw new EvaluationException(ErrorEval.DIV_ZERO);
+ }
+ return StatsLib.varp(values);
+ }
+ };
public static final Function GEOMEAN = new Geomean();
private static class Product extends AggregateFunction {
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org