Maison  >  Article  >  développement back-end  >  Comment trouver la variance dans Golang

Comment trouver la variance dans Golang

PHPz
PHPzoriginal
2023-03-29 11:26:351766parcourir

Dans l'analyse des données, la variance est un concept très basique. Dans le langage Go, trouver la variance est également très simple. Cet article aidera les lecteurs à comprendre comment trouver des variations dans Go.

  1. Définition de la variance

La variance est une mesure de la dispersion de la distribution des données. Plus la variance est grande, plus la dispersion des données est élevée ; à l'inverse, plus la variance est petite, plus la dispersion des données est faible.

Formule de variance :

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

où, $x_i$ représente la $i$ième donnée, $ mu$ représente la moyenne de toutes les données et $n$ représente le nombre de données.

  1. Implémentation de la recherche de la variance

Dans Go, la recherche de la variance peut être implémentée à l'aide du code suivant :

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))
}

Tout d'abord, définissez une tranche contenant les données d'origine, puis appelez les fonctions de moyenne et de variance. La fonction

mean est utilisée pour trouver la moyenne des données d'origine. Utilisez une boucle for pour parcourir les données, additionnez-les, puis divisez-les par le nombre de données. La fonction

variance est utilisée pour trouver la variance. Utilisez d'abord une boucle for pour parcourir les données, puis utilisez la fonction math.Pow pour trouver le carré de la différence entre chaque donnée et la moyenne, et additionnez tous les carrés. Enfin, divisez-le par le nombre de données.

  1. Réalisation de la recherche de l'écart type

Pour la variance, il existe un autre concept très important qui est l'écart type. L'écart type est la racine carrée de la variance et décrit la volatilité des données. Plus l'écart type est grand, plus la fluctuation des données est grande. Au contraire, plus l'écart type est petit, plus la fluctuation des données est faible.

Pour trouver l'écart type dans Go, vous pouvez utiliser le code suivant :

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)
}

La mise en œuvre de la recherche de l'écart type est très similaire à la recherche de la variance. Il vous suffit d'utiliser la fonction math.Sqrt à la fin du fichier. fonction de variance pour trouver la racine carrée.

  1. Résumé

Cet article présente la méthode de mise en œuvre pour trouver la variance et l'écart type dans Go. La variance et l'écart type sont des concepts très importants pour l'analyse et le traitement des données. Le code fourni dans cet article est simple et facile à comprendre, et peut aider les lecteurs à le comprendre et à l'appliquer rapidement. Si vous souhaitez en savoir plus sur l’analyse et le traitement des données, la maîtrise des calculs de variance et d’écart type est indispensable.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Le golang est-il rapide ?Article suivant:Le golang est-il rapide ?