Як обчислити коефіцієнт варіації в python


Коефіцієнт варіації , який часто називають CV , є способом вимірювання розкиду значень у наборі даних відносно середнього. Він розраховується таким чином:

CV = σ / μ

золото:

  • σ: стандартне відхилення набору даних
  • μ: середнє значення набору даних

Простіше кажучи, коефіцієнт варіації – це просто відношення стандартного відхилення до середнього.

Коли використовувати коефіцієнт варіації

Коефіцієнт варіації часто використовується для порівняння варіації між двома різними наборами даних.

У реальному світі його часто використовують у фінансах для порівняння середнього очікуваного прибутку від інвестицій із очікуваним стандартним відхиленням інвестицій. Це дозволяє інвесторам порівнювати співвідношення ризику та прибутку між інвестиціями.

Наприклад, припустімо, що інвестор розглядає можливість інвестувати в такі два пайові фонди:

Взаємний фонд A: середнє значення = 9%, стандартне відхилення = 12,4%

UCITS B: середнє = 5%, стандартне відхилення = 8,2%

Розраховуючи коефіцієнт варіації кожного фонду, інвестор зазначає:

CV для спільного фонду A = 12,4% /9% = 1,38

CV для пайового фонду B = 8,2% / 5% = 1,64

Оскільки взаємний фонд А має нижчий коефіцієнт варіації, він забезпечує кращу середню прибутковість відносно стандартного відхилення.

Як обчислити коефіцієнт варіації в Python

Щоб обчислити коефіцієнт варіації набору даних у Python, ви можете використовувати такий синтаксис:

 import numpy as np

cv = lambda x: np. std (x, ddof= 1 ) / np. mean (x) * 100

Наступні приклади показують, як використовувати цей синтаксис на практиці.

Приклад 1: Коефіцієнт варіації для однієї мережі

Наступний код показує, як обчислити CV для однієї таблиці:

 #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

Коефіцієнт варіації виявляється 9,23 .

Приклад 2: Коефіцієнт варіації для кількох векторів

Наступний код показує, як обчислити CV кількох стовпців у pandas DataFrame:

 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

Зверніть увагу, що відсутні значення будуть просто проігноровані при розрахунку коефіцієнта варіації:

 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

Додаткові ресурси

Як розрахувати коефіцієнт варіації R
Як розрахувати коефіцієнт варіації в Excel
Як розрахувати коефіцієнт варіації в Google Таблицях

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *