Temel kullanım
Bir pandas veri kümesini hızlıca özetlemek için DataFrame üzerinde
describe() metodunu çalıştırın. Sayısal sütunlarda satır sayısı, ortalama, standart sapma, en küçük değer, çeyreklikler ve en büyük değerleri görürsünüz. Böylece veri kümesinin ölçeğini, dağılımını ve olası eksik değerlerini ilk aşamada değerlendirebilirsiniz.Ön koşul olarak pandas kurulu olmalı ve veri kümesi bir DataFrame olarak yüklenmelidir. Aşağıdaki örnek varsayımsal bir veri kümesi kullanır:
Python:
import pandas as pd
df = pd.DataFrame({
"yas": [23, 31, 27, 45],
"puan": [72.5, 88.0, 91.0, 64.0],
"gelir": [25000, 42000, 39000, 28000]
})
print(df.describe())
Çalıştırıldığında yaklaşık olarak şu tür bir özet elde edilir:
Kod:
yas puan gelir
count 4.000000 4.0000 4.000000
mean 31.500000 78.8750 33500.000000
std 9.469248 12.4432 8291.561976
min 23.000000 64.0000 25000.000000
25% 26.000000 70.3750 27250.000000
50% 29.000000 80.2500 33500.000000
75% 34.500000 88.7500 40500.000000
max 45.000000 91.0000 42000.000000
Çıktıdaki satırlar ne anlama gelir?
count, eksik olmayan değerlerin sayısını gösterir. Veri kümesinde 4 satır olmasına rağmen bir sütunda
count değeri 3 görünüyorsa o sütunda en az bir eksik değer vardır.mean aritmetik ortalamadır. std değerlerin ortalamadan ne kadar yayıldığını gösteren standart sapmadır; tek başına verinin normal dağıldığını kanıtlamaz.
min ve max en küçük ve en büyük değerleri, 50% ise medyanı gösterir. 25% ve 75% değerleri birinci ve üçüncü çeyrekliklerdir. Örneğin 25% ile 75% arasındaki aralık, gözlemlerin ortadaki yarısının hangi aralıkta bulunduğunu anlamaya yardımcı olur.
Ortalama ile medyan arasında büyük fark varsa uç değerler veya çarpık bir dağılım olabilir. Bu durum doğrudan hata anlamına gelmez; ham değerleri, aykırı gözlemleri ve sütunun birimini ayrıca incelemeniz gerekir.
Excel dosyasını özetleme
Veri bir Excel dosyasındaysa önce dosyayı okuyup ardından aynı metodu kullanabilirsiniz:
- Excel dosyasını okuyun. Dosyanın Python dosyanızla aynı klasörde olduğunu varsayarak
read_excel()ile DataFrame oluşturun. - Özeti üretin. Oluşturduğunuz DataFrame üzerinde
describe()çalıştırın; sonuç yalnızca sayısal sütunları içerir. - Eksik değerleri karşılaştırın. Her sütundaki gerçek dolu değer sayısını görmek için
df.count()çıktısını özetincountsatırıyla karşılaştırın.
Python:
import pandas as pd
df = pd.read_excel("satislar.xlsx")
ozet = df.describe()
print(ozet)
print(df.count())
read_excel() farklı sayfa içeren dosyalarda varsayılan olarak ilk sayfayı okur. Belirli bir sayfayı seçmeniz gerekiyorsa sheet_name parametresini dosyanızdaki gerçek sayfa adıyla kullanın.Metin ve kategorik sütunları da özetleme
Varsayılan
describe() çıktısı çoğunlukla sayısal sütunlara yöneliktir. Metin veya kategorik sütunların frekans bilgisini görmek için include="all" kullanabilirsiniz:
Python:
print(df.describe(include="all"))
Kategorik sütunlarda genellikle count, unique, top ve freq satırlarını görürsünüz. unique farklı değer sayısını, top en sık görülen değeri, freq ise bu değerin tekrar sayısını belirtir. Sayısal sütunlarda kategorik satırlar, kategorik sütunlarda da sayısal istatistikler uygun olmadığı için boş görünebilir; bu durum tek başına hata değildir.
Yüzdelik değer aralığını değiştirme
Varsayılan olarak 25%, 50% ve 75% yüzdelikleri gösterilir. Daha ayrıntılı bir dağılım görmek için
percentiles parametresini kullanabilirsiniz:
Python:
print(df.describe(percentiles=[0.10, 0.50, 0.90]))
Bu kullanım 10., 50. ve 90. yüzdelikleri raporlar. Yüzdelik değerler verinin hangi bölümünün belirli bir eşikten aşağıda kaldığını anlamaya yarar; ancak neden-sonuç ilişkisi, veri kalitesi veya model başarısı hakkında tek başına kanıt sağlamaz.
Özetten sonra ne kontrol edilmeli?
Önce
count değerlerini satır sayısıyla karşılaştırın. Eksik değer varsa bunları silme veya doldurma kararını sütunun anlamına göre verin; otomatik olarak sıfırla doldurmak istatistikleri bozabilir. Ardından min, max, ortalama ve medyanı birlikte inceleyerek olağandışı değerleri belirleyin.describe() keşif için hızlı bir başlangıç özetidir; sütunlar arasındaki ilişkiyi, kategoriler arasındaki farkın anlamlı olup olmadığını veya verinin temsil gücünü açıklamaz. Bu nedenle özetten sonra gerektiğinde gruplama, dağılım grafiği, eksik veri incelemesi ve alan bilgisine dayalı doğrulama yapılmalıdır.