Cara menghitung rentang interkuartil dengan python
Rentang interkuartil , sering disebut “IQR”, adalah cara untuk mengukur distribusi 50% tengah kumpulan data. Ini dihitung sebagai selisih antara kuartil pertama* (persentil ke-25) dan kuartil ketiga (persentil ke-75) dari kumpulan data.
Untungnya, mudah untuk menghitung rentang interkuartil suatu kumpulan data dengan Python menggunakan fungsi numpy.percentile() .
Tutorial ini menunjukkan beberapa contoh penggunaan praktis fungsi ini.
Contoh 1: rentang interkuartil suatu tabel
Kode berikut menunjukkan cara menghitung rentang nilai interkuartil dalam satu tabel:
import numpy as np #define array of data data = np.array([14, 19, 20, 22, 24, 26, 27, 30, 30, 31, 36, 38, 44, 47]) #calculate interquartile range q3, q1 = np. percentile (data, [75,25]) iqr = q3 - q1 #display interquartile range iqr 12.25
Rentang interkuartil kumpulan data ini ternyata adalah 12,25 . Ini adalah sebaran 50% tengah dari nilai dalam dataset ini.
Contoh 2: Rentang Interkuartil dari Kolom Bingkai Data
Kode berikut menunjukkan cara menghitung rentang interkuartil untuk satu kolom dalam bingkai data:
import numpy as np import pandas as pd #create data frame df = pd.DataFrame({'rating': [90, 85, 82, 88, 94, 90, 76, 75, 87, 86], 'points': [25, 20, 14, 16, 27, 20, 12, 15, 14, 19], 'assists': [5, 7, 7, 8, 5, 7, 6, 9, 9, 5], 'rebounds': [11, 8, 10, 6, 6, 9, 6, 10, 10, 7]}) #calculate interquartile range of values in the 'points' column q75, q25 = np. percentile (df['points'], [75,25]) iqr = q75 - q25 #display interquartile range iqr 5.75
Rentang nilai antarkuartil pada kolom poin ternyata 5,75 .
Contoh 3: Rentang interkuartil dari beberapa kolom bingkai data
Kode berikut menunjukkan cara menghitung rentang interkuartil beberapa kolom dalam bingkai data secara bersamaan:
import numpy as np import pandas as pd #create data frame df = pd.DataFrame({'rating': [90, 85, 82, 88, 94, 90, 76, 75, 87, 86], 'points': [25, 20, 14, 16, 27, 20, 12, 15, 14, 19], 'assists': [5, 7, 7, 8, 5, 7, 6, 9, 9, 5], 'rebounds': [11, 8, 10, 6, 6, 9, 6, 10, 10, 7]}) #define function to calculate interquartile range def find_iqr(x): return np. subtract (*np. percentile (x, [75, 25])) #calculate IQR for 'rating' and 'points' columns df[[' rating ', ' points ']]. apply (find_iqr) rating 6.75 points 5.75 dtype:float64 #calculate IQR for all columns df. apply (find_iqr) rating 6.75 points 5.75 assists 2.50 rebounds 3.75 dtype:float64
Catatan: Kami menggunakan fungsi pandas.DataFrame.apply() untuk menghitung IQR untuk beberapa kolom dalam bingkai data di atas.
Sumber daya tambahan
Apakah rentang antarkuartil (IQR) dipengaruhi oleh outlier?
Cara Menghitung Rentang Interkuartil (IQR) di Excel
Kalkulator Rentang Interkuartil