Heim  >  Artikel  >  Backend-Entwicklung  >  So finden Sie Varianz in Golang

So finden Sie Varianz in Golang

PHPz
PHPzOriginal
2023-03-29 11:26:351717Durchsuche

In der Datenanalyse ist Varianz ein sehr grundlegendes Konzept. In der Go-Sprache ist das Ermitteln der Varianz ebenfalls sehr einfach. Dieser Artikel hilft den Lesern zu verstehen, wie man Varianz in Go findet.

  1. Definition von Varianz

Varianz ist ein Maß für die Streuung der Datenverteilung. Je größer die Varianz, desto höher die Streuung der Daten; umgekehrt gilt: Je kleiner die Varianz, desto geringer die Streuung der Daten.

Varianzformel:

$sigma^2 = frac{sum_{i=1}^n (x_i - mu)^2}{n}$

wobei $x_i$ die $i$-ten Daten $ darstellt mu$ stellt den Mittelwert aller Daten dar und $n$ stellt die Anzahl der Daten dar.

  1. Implementierung der Varianzermittlung

In Go kann die Varianzermittlung mit dem folgenden Code implementiert werden:

package main

import (
    "fmt"
    "math"
)

func main() {
    // 原始数据
    data := []float64{1, 2, 3, 4, 5}
    
    // 求均值
    mean := mean(data)
    
    // 求方差
    variance := variance(data, mean)
    
    fmt.Println(variance)
}

// 求均值
func mean(data []float64) float64 {
    sum := 0.0

    for _, value := range data {
        sum += value
    }

    return sum / float64(len(data))
}

// 求方差
func variance(data []float64, mean float64) float64 {
    sum := 0.0

    for _, value := range data {
        sum += math.Pow(value - mean, 2)
    }

    return sum / float64(len(data))
}

Definieren Sie zunächst ein Segment mit den Originaldaten und rufen Sie dann die Mittelwert- und Varianzfunktionen auf. Die Funktion

mean wird verwendet, um den Mittelwert der Originaldaten zu ermitteln. Verwenden Sie eine for-Schleife, um die Daten zu durchlaufen, sie zu summieren und sie dann durch die Anzahl der Daten zu dividieren. Die Funktion

variance wird verwendet, um die Varianz zu ermitteln. Verwenden Sie zunächst eine for-Schleife, um die Daten zu durchlaufen. Verwenden Sie dann die Funktion math.Pow, um das Quadrat der Differenz zwischen den einzelnen Daten und dem Mittelwert zu ermitteln, und addieren Sie alle Quadrate. Zum Schluss dividieren Sie durch die Anzahl der Daten.

  1. Erkennung der Standardabweichung

Für die Varianz gibt es ein weiteres sehr wichtiges Konzept, nämlich die Standardabweichung. Die Standardabweichung ist die Quadratwurzel der Varianz und beschreibt, wie volatil die Daten sind. Je größer die Standardabweichung, desto größer die Schwankung der Daten. Im Gegenteil: Je kleiner die Standardabweichung, desto geringer die Schwankung der Daten.

Um die Standardabweichung in Go zu ermitteln, können Sie den folgenden Code verwenden:

package main

import (
    "fmt"
    "math"
)

func main() {
    // 原始数据
    data := []float64{1, 2, 3, 4, 5}
    
    // 求均值
    mean := mean(data)
    
    // 求标准差
    stdDev := stdDev(data, mean)
    
    fmt.Println(stdDev)
}

// 求标准差
func stdDev(data []float64, mean float64) float64 {
    sum := 0.0

    for _, value := range data {
        sum += math.Pow(value - mean, 2)
    }

    variance := sum / float64(len(data))

    return math.Sqrt(variance)
}

Die Implementierung zum Ermitteln der Standardabweichung ist dem Ermitteln der Varianz sehr ähnlich. Sie müssen nur die Funktion math.Sqrt am Ende verwenden Varianzfunktion, um die Quadratwurzel zu finden.

  1. Zusammenfassung

In diesem Artikel wird die Implementierungsmethode zum Ermitteln von Varianz und Standardabweichung in Go vorgestellt. Varianz und Standardabweichung sind sehr wichtige Konzepte für die Datenanalyse und -verarbeitung. Der in diesem Artikel bereitgestellte Code ist einfach und leicht zu verstehen und kann den Lesern helfen, ihn schnell zu verstehen und anzuwenden. Wenn Sie mehr über die Datenanalyse und -verarbeitung erfahren möchten, ist die Beherrschung der Berechnung von Varianz und Standardabweichung unerlässlich.

Das obige ist der detaillierte Inhalt vonSo finden Sie Varianz in Golang. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Ist Golang schnell?Nächster Artikel:Ist Golang schnell?