Nach der Standardabweichung in PHP folgt die gleiche Funktion in Javascript.
Javascript Funktion Standardabweichung

var stabw = function(array) {
	var len = 0;
	var sum = array.reduce(function(pv, cv) { ++len; return pv + cv; }, 0);
	var mean = sum / len;
	var result = 0;
	for (var i = 0; i < len; i++)
		result += Math.pow(array[i] - mean, 2);
	len = (len == 1) ? len : len - 1;			
	return Math.sqrt(result / len);	
}

Als Parameter wird ein numerisches Array übergeben:

var testArray = [12, 13, 16, 18];
console.log(stabw(testArray));

In diesem Beispiel beträgt die Standardabweichung 2,753785274. Weitere Informationen zur Standardabweichung gibt es im PHP Artikel über die Standardabweichung (siehe oben).

Keine Kommentare »
 

Standardabweichung in einem Beispiel
Der Mitarbeiter brauch an 5 Tagen 12,13,16 und 18 Minuten auf dem Weg zur Arbeit.

Berechnung Aritmethisches Mittel / Durchschnitt:
(12 + 13 + 16 + 18) / 4 = 14,75
Summiert man alle Zahlen und teilt Sie durch die Menge erhält man das Aritmethische Mittel.

Berechnung der Varianz:
((12 – 14,75)² + (13 – 14,75)² + (16 – 14,75)² + (18 – 14,75)²) / 3 = 7,583333333
Bei der Varianz Berechnung wird von jedem Wert aus der Liste das Aritmethische Mittel subtrahiert und das Ergebnis quadriert. Anschließend addiert man alle Ergebnisse und dividiert durch die Menge der Zahlen minus eins.

Berechnung der Standardabweichung:
√7,583333333 = 2,753785274
Die Standardabweichung wird berechnet indem aus der Varianz die Wurzel gezogen wird.

Die Standardabweichung beträgt 2,753785274.

PHP Funktion Standardabweichung

function stabw($valueArray) {
	$sum = array_sum($valueArray);
	$count = count($valueArray);
	$mean =	$sum / $count;
	$result = 0;
	foreach ($valueArray as $value)
		$result += pow($value - $mean, 2);
	unset($value);			
	$count = ($count == 1) ? $count : $count - 1;
	return sqrt($result / $count);
}

Die Funktion arbeitet mit allen arten von Arrays solange numerische Array Werte übergeben werden. Bsp.:

array(12, 'irgendwas' => 13, 11 => 16, 'beliebig' => 18);
Keine Kommentare »