@@ 3118-3153 (lines=36) @@ | ||
3115 | * @param mixed $arg,... Data values |
|
3116 | * @return float |
|
3117 | */ |
|
3118 | public static function STDEVA() |
|
3119 | { |
|
3120 | $aArgs = Functions::flattenArrayIndexed(func_get_args()); |
|
3121 | ||
3122 | $returnValue = null; |
|
3123 | ||
3124 | $aMean = self::AVERAGEA($aArgs); |
|
3125 | if (!is_null($aMean)) { |
|
3126 | $aCount = -1; |
|
3127 | foreach ($aArgs as $k => $arg) { |
|
3128 | if ((is_bool($arg)) && |
|
3129 | (!Functions::isMatrixValue($k))) { |
|
3130 | } else { |
|
3131 | // Is it a numeric value? |
|
3132 | if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) & ($arg != '')))) { |
|
3133 | if (is_bool($arg)) { |
|
3134 | $arg = (integer) $arg; |
|
3135 | } elseif (is_string($arg)) { |
|
3136 | $arg = 0; |
|
3137 | } |
|
3138 | if (is_null($returnValue)) { |
|
3139 | $returnValue = pow(($arg - $aMean), 2); |
|
3140 | } else { |
|
3141 | $returnValue += pow(($arg - $aMean), 2); |
|
3142 | } |
|
3143 | ++$aCount; |
|
3144 | } |
|
3145 | } |
|
3146 | } |
|
3147 | ||
3148 | if (($aCount > 0) && ($returnValue >= 0)) { |
|
3149 | return sqrt($returnValue / $aCount); |
|
3150 | } |
|
3151 | } |
|
3152 | return Functions::DIV0(); |
|
3153 | } |
|
3154 | ||
3155 | ||
3156 | /** |
|
@@ 3215-3250 (lines=36) @@ | ||
3212 | * @param mixed $arg,... Data values |
|
3213 | * @return float |
|
3214 | */ |
|
3215 | public static function STDEVPA() |
|
3216 | { |
|
3217 | $aArgs = Functions::flattenArrayIndexed(func_get_args()); |
|
3218 | ||
3219 | $returnValue = null; |
|
3220 | ||
3221 | $aMean = self::AVERAGEA($aArgs); |
|
3222 | if (!is_null($aMean)) { |
|
3223 | $aCount = 0; |
|
3224 | foreach ($aArgs as $k => $arg) { |
|
3225 | if ((is_bool($arg)) && |
|
3226 | (!Functions::isMatrixValue($k))) { |
|
3227 | } else { |
|
3228 | // Is it a numeric value? |
|
3229 | if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) & ($arg != '')))) { |
|
3230 | if (is_bool($arg)) { |
|
3231 | $arg = (integer) $arg; |
|
3232 | } elseif (is_string($arg)) { |
|
3233 | $arg = 0; |
|
3234 | } |
|
3235 | if (is_null($returnValue)) { |
|
3236 | $returnValue = pow(($arg - $aMean), 2); |
|
3237 | } else { |
|
3238 | $returnValue += pow(($arg - $aMean), 2); |
|
3239 | } |
|
3240 | ++$aCount; |
|
3241 | } |
|
3242 | } |
|
3243 | } |
|
3244 | ||
3245 | if (($aCount > 0) && ($returnValue >= 0)) { |
|
3246 | return sqrt($returnValue / $aCount); |
|
3247 | } |
|
3248 | } |
|
3249 | return Functions::DIV0(); |
|
3250 | } |
|
3251 | ||
3252 | ||
3253 | /** |