Code Duplication    Length = 36-36 lines in 2 locations

src/PhpSpreadsheet/Calculation/Statistical.php 2 locations

@@ 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
    /**