Cara menghitung deviasi median absolut dengan python


Deviasi absolut median mengukur distribusi observasi dalam suatu kumpulan data.

Ini adalah ukuran yang sangat berguna karena tidak terlalu terpengaruh oleh outlier dibandingkan ukuran penyebaran lainnya seperti deviasi standar dan varians.

Rumus untuk menghitung simpangan median absolut yang sering disingkat MAD adalah:

MAD = median (| xixm |)

Emas:

  • x i : nilai ke-i dari kumpulan data
  • x m : Nilai median dalam kumpulan data

Contoh berikut menunjukkan cara menghitung deviasi absolut median dengan Python menggunakan fungsi statsmodels mad .

Contoh 1: Hitung MAD untuk sebuah tabel

Kode berikut menunjukkan cara menghitung deviasi absolut median untuk satu array NumPy dengan Python:

 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

Deviasi absolut median untuk kumpulan data tersebut adalah 11.1195 .

Penting untuk dicatat bahwa rumus yang digunakan untuk menghitung MAD menghitung perkiraan kuat deviasi standar dengan asumsi distribusi normal dengan menskalakan hasil dengan faktor sekitar 0,67.

Untuk menghindari penggunaan faktor penskalaan ini, cukup atur c = 1 sebagai berikut:

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

7.5

Contoh 2: Hitung MAD untuk DataFrame

Kode berikut menunjukkan cara menghitung MAD untuk satu kolom di pandas DataFrame:

 #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

Deviasi median absolut untuk kolom B ternyata adalah 2.965204 .

Kita dapat menggunakan sintaks serupa untuk menghitung MAD untuk beberapa kolom di pandas DataFrame:

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

At 0.000000
B 2.965204
C 2.965204
dtype:float64

Simpangan median absolutnya adalah 0 untuk kolom A, 2,965204 untuk kolom B, dan 2,965204 untuk kolom C.

Sumber daya tambahan

Cara menghitung MAPE dengan Python
Cara menghitung SMAPE dengan Python
Cara Menghitung RMSE dengan Python

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *