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?