Python'da çeyrekler arası aralık nasıl hesaplanır


Genellikle “IQR” olarak adlandırılan çeyrekler arası aralık , bir veri kümesinin ortadaki %50’lik kısmının dağılımını ölçmenin bir yoludur. Bir veri setinin ilk çeyreği* (yüzde 25’inci dilim) ile üçüncü çeyreği (yüzde 75’inci dilim) arasındaki fark olarak hesaplanır.

Neyse ki Python’da bir veri kümesinin çeyrekler arası aralığını numpy.percentile() işlevini kullanarak hesaplamak kolaydır.

Bu eğitimde bu işlevin pratik kullanımına ilişkin birkaç örnek gösterilmektedir.

Örnek 1: bir tablonun çeyrekler arası aralığı

Aşağıdaki kod, tek bir tabloda çeyrekler arası değer aralığının nasıl hesaplanacağını gösterir:

 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

Bu veri setinin çeyrekler arası aralığı 12,25 olarak ortaya çıkıyor. Bu, bu veri kümesindeki değerlerin ortadaki %50’sinin dağılımıdır.

Örnek 2: Veri Çerçevesi Sütununun Çeyrekler Arası Aralığı

Aşağıdaki kod, bir veri çerçevesindeki tek bir sütun için çeyrekler arası aralığın nasıl hesaplanacağını gösterir:

 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

Puan sütunundaki değerlerin çeyrekler arası aralığı 5,75 olarak ortaya çıkıyor.

Örnek 3: Çoklu veri çerçevesi sütunlarının çeyrekler arası aralığı

Aşağıdaki kod, bir veri çerçevesindeki birden çok sütunun çeyrekler arası aralığının aynı anda nasıl hesaplanacağını gösterir:

 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

Not: Yukarıdaki veri çerçevesindeki birden çok sütunun IQR’sini hesaplamak için pandas.DataFrame.apply() işlevini kullanırız.

Ek kaynaklar

Çeyrekler arası aralık (IQR) aykırı değerlerden etkileniyor mu?
Excel’de Çeyrekler Arası Aralık (IQR) Nasıl Hesaplanır?
Çeyrekler Arası Aralık Hesaplayıcı

Yorum ekle

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