Come calcolare il coefficiente di variazione in python
Un coefficiente di variazione , spesso abbreviato in CV , è un modo per misurare la diffusione dei valori in un set di dati rispetto alla media. Viene calcolato come segue:
CV = σ/μ
Oro:
- σ: la deviazione standard del set di dati
- μ: la media del set di dati
In poche parole, il coefficiente di variazione è semplicemente il rapporto tra la deviazione standard e la media.
Quando utilizzare il coefficiente di variazione
Il coefficiente di variazione viene spesso utilizzato per confrontare la variazione tra due diversi insiemi di dati.
Nel mondo reale, viene spesso utilizzato in finanza per confrontare il rendimento medio atteso di un investimento con la deviazione standard attesa dell’investimento. Ciò consente agli investitori di confrontare il compromesso rischio-rendimento tra gli investimenti.
Ad esempio, supponiamo che un investitore stia valutando di investire nei seguenti due fondi comuni di investimento:
Fondo comune A: media = 9%, deviazione standard = 12,4%
OICVM B: media = 5%, deviazione standard = 8,2%
Calcolando il coefficiente di variazione di ciascun fondo, l’investitore rileva:
CV del fondo comune A = 12,4% /9% = 1,38
CV del fondo comune B = 8,2% / 5% = 1,64
Poiché il Fondo comune A ha un coefficiente di variazione inferiore, fornisce un rendimento medio migliore rispetto alla deviazione standard.
Come calcolare il coefficiente di variazione in Python
Per calcolare il coefficiente di variazione di un set di dati in Python, puoi utilizzare la seguente sintassi:
import numpy as np cv = lambda x: np. std (x, ddof= 1 ) / np. mean (x) * 100
Gli esempi seguenti mostrano come utilizzare questa sintassi nella pratica.
Esempio 1: coefficiente di variazione per una singola rete
Il codice seguente mostra come calcolare il CV per una singola tabella:
#create vector of data data = [88, 85, 82, 97, 67, 77, 74, 86, 81, 95, 77, 88, 85, 76, 81, 82] #define function to calculate cv cv = lambda x: np. std (x, ddof= 1 ) / np. mean (x) * 100 #calculate CV cv(data) 9.234518
Il coefficiente di variazione risulta essere 9,23 .
Esempio 2: coefficiente di variazione per più vettori
Il codice seguente mostra come calcolare il CV di più colonne in un DataFrame panda:
import numpy as np import pandas as pd #define function to calculate cv cv = lambda x: np. std (x, ddof= 1 ) / np. mean (x) * 100 #create pandas DataFrame df = pd. DataFrame ({'a': [88, 85, 82, 97, 67, 77, 74, 86, 81, 95], 'b': [77, 88, 85, 76, 81, 82, 88, 91, 92, 99], 'c': [67, 68, 68, 74, 74, 76, 76, 77, 78, 84]}) #calculate CV for each column in data frame df. apply (cv) a 11.012892 b8.330843 c7.154009 dtype:float64
Tieni presente che i valori mancanti verranno semplicemente ignorati durante il calcolo del coefficiente di variazione:
import numpy as np import pandas as pd #define function to calculate cv cv = lambda x: np. std (x, ddof= 1 ) / np. mean (x) * 100 #create pandas DataFrame df = pd. DataFrame ({'a': [88, 85, 82, 97, 67, 77, 74, 86, 81, 95], 'b': [77, 88, 85, 76, 81, 82, 88, 91, np. no , 99], 'c': [67, 68, 68, 74, 74, 76, 76, 77, 78, np. no ]}) #calculate CV for each column in data frame df. apply (cv) a 11.012892 b 8.497612 c5.860924 dtype:float64
Risorse addizionali
Come calcolare il coefficiente di variazione di R
Come calcolare il coefficiente di variazione in Excel
Come calcolare il coefficiente di variazione in Fogli Google