Python'da mutlak medyan sapma nasıl hesaplanır


Medyan mutlak sapma, bir veri setindeki gözlemlerin dağılımını ölçer.

Bu özellikle yararlı bir ölçümdür çünkü standart sapma ve varyans gibi diğer dağılım ölçümlerine göre aykırı değerlerden daha az etkilenir.

Genellikle MAD olarak kısaltılan mutlak medyan sapmayı hesaplama formülü şöyledir:

MAD = medyan (|x i – x m |)

Altın:

  • x i : veri kümesinin i’inci değeri
  • x m : Veri kümesindeki medyan değer

Aşağıdaki örnekler Python’da statsmodels mad işlevini kullanarak medyan mutlak sapmanın nasıl hesaplanacağını gösterir.

Örnek 1: Bir tablo için MAD’yi hesaplayın

Aşağıdaki kod, Python’da tek bir NumPy dizisi için medyan mutlak sapmanın nasıl hesaplanacağını gösterir:

 import numpy as np
from statsmodels import robust

#define data
data = np. array ([1, 4, 4, 7, 12, 13, 16, 19, 22, 24])

#calculate MAD
robust. mad (data)

11.1195

Veri kümesinin medyan mutlak sapması 11,1195 olarak ortaya çıkıyor.

MAD’yi hesaplamak için kullanılan formülün, sonucu yaklaşık 0,67 faktörüyle ölçeklendirerek normal dağılım varsayarak standart sapmanın sağlam bir tahminini hesapladığını unutmamak önemlidir.

Bu ölçeklendirme faktörünü kullanmaktan kaçınmak için c = 1’i aşağıdaki gibi ayarlamanız yeterlidir:

 #calculate MAD without scaling factor
robust. mad (data, c=1)

7.5

Örnek 2: DataFrame için MAD’yi hesaplama

Aşağıdaki kod, pandas DataFrame’deki tek bir sütun için MAD’nin nasıl hesaplanacağını gösterir:

 #make this example reproducible
n.p. random . seeds (1)

#create pandas DataFrame
data = pd. DataFrame ( np.random.randint (0,10,size=(5,3)),columns = [' A ',' B ',' C '])

#view DataFrame
data

        A B C
0 5 8 9
1 5 0 0
2 1 7 6
3 9 2 4
4 5 2 4

#calculate MAD for column B
data[[' B ']]. apply (robust. mad )

B 2.965204
dtype:float64

B sütununun mutlak medyan sapması 2,965204 olarak çıkıyor.

Pandaların DataFrame’indeki birden fazla sütun için MAD’yi hesaplamak amacıyla benzer sözdizimini kullanabiliriz:

 #calculate MAD for all columns
data[[' A ',' B ',' C ']]. apply (robust. mad )

At 0.000000
B 2.965204
C 2.965204
dtype:float64

Mutlak medyan sapma A sütunu için 0 , B sütunu için 2,965204 ve C sütunu için 2,965204’tür .

Ek kaynaklar

Python’da MAPE nasıl hesaplanır
Python’da SMAPE nasıl hesaplanır
Python’da RMSE Nasıl Hesaplanır?

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir