Python'da z puanları nasıl hesaplanır
İstatistiklerde z-puanı bize bir değerin ortalamadan kaç standart sapma olduğunu söyler. Z-puanını hesaplamak için aşağıdaki formülü kullanırız:
z = (X – μ) / σ
Altın:
- X tek bir ham veri değeridir
- μ nüfus ortalamasıdır
- σ popülasyon standart sapmasıdır
Bu eğitimde Python’da ham veri değerleri için z puanlarının nasıl hesaplanacağı açıklanmaktadır.
Python’da Z Puanları Nasıl Hesaplanır?
Aşağıdaki sözdizimini kullanan scipy.stats.zscore kullanarak Python’da z-puanlarını hesaplayabiliriz:
scipy.stats.zscore(a, axis=0, ddof=0, nan_policy=’propagate’)
Altın:
- a : verileri içeren dizi tipi bir nesne
- eksen : z-puanlarının hesaplanacağı eksen. Varsayılan değer 0’dır.
- ddof : standart sapmanın hesaplanmasında serbestlik derecelerinin düzeltilmesi. Varsayılan değer 0’dır.
- nan_policy : girdi nan içerdiğinde nasıl davranılır? Varsayılan değer, nan değerini döndüren propagate’tir. ‘yükselt’ bir hataya neden olur ve ‘atla’, nan değerlerini göz ardı ederek hesaplamalar gerçekleştirir.
Aşağıdaki örnekler, tek boyutlu numpy dizileri, çok boyutlu numpy dizileri ve Pandas DataFrames için z puanlarını hesaplamak amacıyla bu fonksiyonun nasıl kullanılacağını göstermektedir.
Numpy tek boyutlu diziler
Adım 1: Modülleri içe aktarın.
import pandas as pd import numpy as np import scipy.stats as stats
Adım 2: Bir değerler tablosu oluşturun.
data = np.array([6, 7, 7, 12, 13, 13, 15, 16, 19, 22])
Adım 3: Tablodaki her değer için z puanlarını hesaplayın.
stats.zscore(data)
[-1.394, -1.195, -1.195, -0.199, 0, 0, 0.398, 0.598, 1.195, 1.793]
Her z-puanı bize bireysel bir değerin ortalamadan kaç standart sapma olduğunu söyler. Örneğin:
- Tablodaki “6”nın ilk değeri ortalamanın 1.394 standart sapma altındadır .
- Tablodaki “13”ün beşinci değeri ortalamadan 0 standart sapmadır, yani ortalamaya eşittir.
- Tablodaki son değer olan “22” ise ortalamanın 1.793 standart sapma üzerindedir .
Numpy çok boyutlu diziler
Çok boyutlu bir dizimiz varsa, her z-puanını kendi dizisine göre hesaplamak istediğimizi belirtmek için axis parametresini kullanabiliriz. Örneğin aşağıdaki çok boyutlu diziye sahip olduğumuzu varsayalım:
data = np.array([[5, 6, 7, 7, 8], [8, 8, 8, 9, 9], [2, 2, 4, 4, 5]])
Her tablonun z puanlarını hesaplamak için aşağıdaki sözdizimini kullanabiliriz:
stats.zscore(data, axis=1) [[-1.569 -0.588 0.392 0.392 1.373] [-0.816 -0.816 -0.816 1.225 1.225] [-1.167 -1.167 0.5 0.5 1.333]]
Her bir değere ilişkin z puanları, bulundukları tabloya göre görüntülenir. Örneğin:
- İlk tablodaki “5”in ilk değeri, tablo ortalamasının 1.159 standart sapma altındadır .
- İkinci tablodaki “8”in ilk değeri, tablo ortalamasının 0,816 standart sapma altındadır .
- Üçüncü tablodaki “2”nin ilk değeri, tablo ortalamasının 1.167 standart sapma altındadır .
Pandalar Veri Çerçeveleri
Bunun yerine bir Pandas DataFrame’imiz olduğunu varsayalım:
data = pd.DataFrame(np.random.randint(0, 10, size=(5, 3)), columns=['A', 'B', 'C']) data ABC 0 8 0 9 1 4 0 7 2 9 6 8 3 1 8 1 4 8 0 8
Sütun başına ayrı değerlerin z puanını hesaplamak için uygulama işlevini kullanabiliriz:
data.apply(stats.zscore) ABC 0 0.659380 -0.802955 0.836080 1 -0.659380 -0.802955 0.139347 2 0.989071 0.917663 0.487713 3 -1.648451 1.491202 -1.950852 4 0.659380 -0.802955 0.487713
Her bir değere ilişkin z puanları, bulundukları sütuna göre görüntülenir. Örneğin:
- İlk sütundaki “8”in ilk değeri, sütununun ortalama değerinin 0,659 standart sapma üzerindedir .
- İkinci sütundaki ilk “0” değeri, sütunundaki ortalama değerden 0,803 standart sapma daha düşüktür .
- Üçüncü sütundaki “9”un ilk değeri, sütununun ortalama değerinin 0,836 standart sapma üzerindedir .
Ek kaynaklar:
Excel’de Z Puanları Nasıl Hesaplanır?
SPSS’de Z Puanları Nasıl Hesaplanır?
TI-84 Hesap Makinesinde Z Puanları Nasıl Hesaplanır?