Standardabweichung in C#

Muhammad Maisam Abbas 12 Oktober 2023
  1. Standardabweichung mit der selbstdefinierten Methode in C#
  2. Standardabweichung Mit der Erweiterungsfunktion in C#
Standardabweichung in C#

In diesem Lernprogramm werden die Methoden zum Ermitteln der Standardabweichung von Elementen einer Liste in C# vorgestellt.

Standardabweichung mit der selbstdefinierten Methode in C#

Die Standardabweichung ist das Maß für die Streuung vom Mittelwert in der Statistik. Es wird berechnet, indem das Quadrat der Differenz jedes Elements vom Mittelwert genommen, alle quadratischen Werte addiert, die Antwort durch die Gesamtzahl der Werte geteilt und eine Quadratwurzel aus dem resultierenden Wert gezogen wird.

Standardabweichung

Leider gibt es keine integrierte Methode zur Berechnung der Standardabweichung in C#. Wir können jedoch eine Logik definieren, um sie zu berechnen. Das folgende Codebeispiel zeigt uns, wie wir die Standardabweichung der Elemente in einer Liste in C# ermitteln können.

using System;
using System.Collections.Generic;
using System.Linq;

namespace sd_list {
  class Program {
    static double standardDeviation(IEnumerable<double> sequence) {
      double result = 0;

      if (sequence.Any()) {
        double average = sequence.Average();
        double sum = sequence.Sum(d => Math.Pow(d - average, 2));
        result = Math.Sqrt((sum) / sequence.Count());
      }
      return result;
    }
    static void Main(string[] args) {
      List<double> intList = new List<double> { 1, 2, 3, 4, 5 };
      double standard_deviation = standardDeviation(intList);
      Console.WriteLine("Standard Deviation = {0}", standard_deviation);
    }
  }
}

Ausgabe:

Standard Deviation = 1.4142135623731

Im obigen Code haben wir die Funktion standardDeviation() erstellt, die die Standardabweichung der Elemente einer Liste von Doppelwerten in C# berechnet. Wir haben zuerst den Mittelwert der Werte mit der Funktion sequence.Average() berechnet. Wir haben dann die Summe des Quadrats der Differenz der Einzelwerte aus dem Mittelwert berechnet und in der Variablen sum gespeichert. Am Ende haben wir die Summe durch die Gesamtzahl der Werte geteilt und ihre Quadratwurzel berechnet. Wir haben das Ergebnis dieser Berechnung in der Variable result gespeichert und die Variable result zurückgegeben.

Standardabweichung Mit der Erweiterungsfunktion in C#

Die im vorherigen Beispiel diskutierte Logik kann aus Gründen der Benutzerfreundlichkeit auch in eine Erweiterungsfunktion umgewandelt werden. Das folgende Codebeispiel zeigt, wie Sie die Logik des vorherigen Beispiels in eine Erweiterungsmethode in C# ändern.

using System;
using System.Collections.Generic;
using System.Linq;

namespace sd_list {
  public static class ExtensionClass {
    public static double standardDeviation(this IEnumerable<double> sequence) {
      double average = sequence.Average();
      double sum = sequence.Sum(d => Math.Pow(d - average, 2));
      return Math.Sqrt((sum) / sequence.Count());
    }
  }
  class Program {
    static void Main(string[] args) {
      List<double> intList = new List<double> { 1, 2, 3, 4, 5 };
      double standard_deviation = intList.standardDeviation();
      Console.WriteLine("Standard Deviation = {0}", standard_deviation);
    }
  }
}

Ausgabe:

Standard Deviation = 1.4142135623731

Im obigen Code haben wir unseren vorherigen Code in eine Erweiterungsmethode in C# umgewandelt.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Verwandter Artikel - Csharp Math