كيفية حساب معامل التباين في بايثون


معامل التباين ، الذي غالبًا ما يتم اختصاره إلى CV ، هو وسيلة لقياس انتشار القيم في مجموعة بيانات بالنسبة إلى المتوسط. يتم حسابه على النحو التالي:

السيرة الذاتية = σ / μ

ذهب:

  • σ : الانحراف المعياري لمجموعة البيانات
  • μ: متوسط مجموعة البيانات

ببساطة، معامل الاختلاف هو ببساطة نسبة الانحراف المعياري إلى المتوسط.

متى يتم استخدام معامل الاختلاف

غالبًا ما يستخدم معامل الاختلاف لمقارنة التباين بين مجموعتين مختلفتين من البيانات.

في العالم الحقيقي، غالبا ما يستخدم في مجال التمويل لمقارنة متوسط العائد المتوقع للاستثمار مقابل الانحراف المعياري المتوقع للاستثمار. وهذا يسمح للمستثمرين بمقارنة مقايضة المخاطر والعائد بين الاستثمارات.

على سبيل المثال، لنفترض أن أحد المستثمرين يفكر في الاستثمار في الصندوقين المشتركين التاليين:

صندوق الاستثمار المشترك أ: المتوسط = 9%، الانحراف المعياري = 12.4%

UCITS B: المتوسط = 5%، الانحراف المعياري = 8.2%

ومن خلال حساب معامل التباين لكل صندوق، يلاحظ المستثمر:

السيرة الذاتية لصندوق الاستثمار المشترك A = 12.4% /9% = 1.38

السيرة الذاتية لصندوق الاستثمار المشترك B = 8.2% / 5% = 1.64

وبما أن الصندوق المشترك أ لديه معامل تباين أقل، فإنه يوفر متوسط عائد أفضل مقارنة بالانحراف المعياري.

كيفية حساب معامل التباين في بايثون

لحساب معامل الاختلاف لمجموعة بيانات في بايثون، يمكنك استخدام الصيغة التالية:

 import numpy as np

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

توضح الأمثلة التالية كيفية استخدام بناء الجملة هذا عمليًا.

مثال 1: معامل الاختلاف لشبكة واحدة

الكود التالي يوضح كيفية حساب السيرة الذاتية لجدول واحد:

 #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: معامل الاختلاف لعدة نواقل

يوضح الكود التالي كيفية حساب السيرة الذاتية لأعمدة متعددة في 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
كيفية حساب معامل التباين في برنامج إكسل
كيفية حساب معامل التباين في جداول بيانات جوجل

Add a Comment

ایمئیل یایینلانمایاجاق ایسته‎نیله‎ن بوشلوقلار خاللانمیشدیر *