Sprache: C#
Berechnung der Standardabweichung
/// <summary>
/// Standardabweichung</param>
/// die Wurzel aus (Summe der Quadrierungen geteilt durch die Anzahl der Werte)
/// </summary>
/// <param name="Liste"></param>
/// <param name="Kommastellen"></param>
/// <returns></returns>
public static double Standardabweichung(List<double> Liste, int Kommastellen)
{
if (Liste.Count < 2) return 0.0;
double Summe_aller_Quadrierungen = 0.0;
double Mittelwert = Liste.Average();
foreach (double Wert in Liste)
{
Summe_aller_Quadrierungen += Math.Pow((Wert - Mittelwert), 2);
}
return Math.Round(Math.Sqrt(Summe_aller_Quadrierungen / (Liste.Count - 1)), Kommastellen);
}
/// <summary>
/// Standardabweichung</param>
/// die Wurzel aus (Summe der Quadrierungen geteilt durch die Anzahl der Werte)
/// </summary>
/// <param name="Liste"></param>
/// <param name="Kommastellen"></param>
/// <returns></returns>
public static double Standardabweichung(List<double> Liste, int Kommastellen)
{
if (Liste.Count < 2) return 0.0;
double Summe_aller_Quadrierungen = 0.0;
double Mittelwert = Liste.Average();
foreach (double Wert in Liste)
{
Summe_aller_Quadrierungen += Math.Pow((Wert - Mittelwert), 2);
}
return Math.Round(Math.Sqrt(Summe_aller_Quadrierungen / (Liste.Count - 1)), Kommastellen);
}
Alte URL:
/snippet/standardabweichung/1674
Prima – danke. Aber ist dort nicht ein Fehler?
Es muss durch ‚Liste.Count‘ geteilt werden (das -1 ist falsch).
Hab mal ein bißchen probiert und gegoogelt:
– Excel macht es so wie im Source Code
– In Netz findet man beide Varianten – also geteilt durch die Anzahl und die Anzahl – 1
– Teilt man durch die ‚Anzahl -1‘ spricht man von der empirischen Standardabweichung
Es sind also beide richtig.