@@ 3082-3117 (lines=36) @@ | ||
3079 | * @param mixed $arg,... Data values |
|
3080 | * @return float |
|
3081 | */ |
|
3082 | public static function STDEVA() |
|
3083 | { |
|
3084 | $aArgs = Functions::flattenArrayIndexed(func_get_args()); |
|
3085 | ||
3086 | $returnValue = null; |
|
3087 | ||
3088 | $aMean = self::AVERAGEA($aArgs); |
|
3089 | if (!is_null($aMean)) { |
|
3090 | $aCount = -1; |
|
3091 | foreach ($aArgs as $k => $arg) { |
|
3092 | if ((is_bool($arg)) && |
|
3093 | (!Functions::isMatrixValue($k))) { |
|
3094 | } else { |
|
3095 | // Is it a numeric value? |
|
3096 | if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) & ($arg != '')))) { |
|
3097 | if (is_bool($arg)) { |
|
3098 | $arg = (integer) $arg; |
|
3099 | } elseif (is_string($arg)) { |
|
3100 | $arg = 0; |
|
3101 | } |
|
3102 | if (is_null($returnValue)) { |
|
3103 | $returnValue = pow(($arg - $aMean), 2); |
|
3104 | } else { |
|
3105 | $returnValue += pow(($arg - $aMean), 2); |
|
3106 | } |
|
3107 | ++$aCount; |
|
3108 | } |
|
3109 | } |
|
3110 | } |
|
3111 | ||
3112 | if (($aCount > 0) && ($returnValue >= 0)) { |
|
3113 | return sqrt($returnValue / $aCount); |
|
3114 | } |
|
3115 | } |
|
3116 | ||
3117 | return Functions::DIV0(); |
|
3118 | } |
|
3119 | ||
3120 | /** |
|
@@ 3177-3212 (lines=36) @@ | ||
3174 | * @param mixed $arg,... Data values |
|
3175 | * @return float |
|
3176 | */ |
|
3177 | public static function STDEVPA() |
|
3178 | { |
|
3179 | $aArgs = Functions::flattenArrayIndexed(func_get_args()); |
|
3180 | ||
3181 | $returnValue = null; |
|
3182 | ||
3183 | $aMean = self::AVERAGEA($aArgs); |
|
3184 | if (!is_null($aMean)) { |
|
3185 | $aCount = 0; |
|
3186 | foreach ($aArgs as $k => $arg) { |
|
3187 | if ((is_bool($arg)) && |
|
3188 | (!Functions::isMatrixValue($k))) { |
|
3189 | } else { |
|
3190 | // Is it a numeric value? |
|
3191 | if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) & ($arg != '')))) { |
|
3192 | if (is_bool($arg)) { |
|
3193 | $arg = (integer) $arg; |
|
3194 | } elseif (is_string($arg)) { |
|
3195 | $arg = 0; |
|
3196 | } |
|
3197 | if (is_null($returnValue)) { |
|
3198 | $returnValue = pow(($arg - $aMean), 2); |
|
3199 | } else { |
|
3200 | $returnValue += pow(($arg - $aMean), 2); |
|
3201 | } |
|
3202 | ++$aCount; |
|
3203 | } |
|
3204 | } |
|
3205 | } |
|
3206 | ||
3207 | if (($aCount > 0) && ($returnValue >= 0)) { |
|
3208 | return sqrt($returnValue / $aCount); |
|
3209 | } |
|
3210 | } |
|
3211 | ||
3212 | return Functions::DIV0(); |
|
3213 | } |
|
3214 | ||
3215 | /** |