Python ile Tanımlayıcı (Descriptive) Veri Analizi: Kodlar ve Açıklamalarla Öğrenin


Python ile Tanımlayıcı (Descriptive) Veri Analizi

Günümüzde teknolojinin gelişimiyle birlikte, hayatımızın her alanından veri toplanabiliyor. Ancak bu verilerin ham haliyle bilgiye dönüşmesi mümkün değil. Bu noktada devreye veri bilimi ve veri analistleri giriyor. Ham verileri anlamlı hale getirerek içgörü üreten veri bilimciler, bugünün en çok ihtiyaç duyulan uzmanları arasında yer alıyor.

Veri biliminde ilk adımlardan biri, eldeki veriyi tanımak ve yapısını incelemektir. İşte bu yüzden tanımlayıcı analiz (descriptive analysis), her analizin vazgeçilmez bir parçasıdır.

Bu yazıda, Python kullanarak bir veri seti üzerinde tanımlayıcı analiz yapmak için kullanabileceğiniz kodları ve her bir adımın neden önemli olduğunu detaylarıyla öğreneceksiniz.

Tanımlayıcı Analiz Nedir ve Neden Önemlidir?

Tanımlayıcı analiz, bir veri kümesiyle ilk kez karşılaşıldığında yapılması gereken ilk analiz türüdür. Amaç:

  • Verinin dağılımını görmek
  • Aykırı değerleri tespit etmek
  • Yazım hatalarını fark etmek
  • Değişkenler arası benzerlikleri belirlemek
  • Daha ileri analizlere hazırlık yapmak

Bu analiz sayesinde, sonraki adımlarda uygulayacağınız istatistiksel ya da makine öğrenimi modellerine sağlam ve temiz bir veri sunmuş olursunuz.

Önce Verileri Excel’den Yükleyelim


import pandas as pd

df = pd.read_excel("C:/Data_1.xlsx")
df.head(5)

Çıktı:

Sample Treatment Period Result
1Tr-160.000158
1Tr-260.000218
1Tr-360.009765
1Tr-460.003189
1Tr-1120.020538


1️⃣ Belirli Bir Kolonu Özetle


df.Result.describe()

Ne İşe Yarar?
Verinin genel yapısını hızlıca görmenizi sağlar. Ortalama ile medyan arasındaki fark, verinin simetrik mi yoksa çarpık mı olduğunu gösterir.

2️⃣ Gruplara Göre Özet İstatistikler


df.groupby("Treatment").Result.describe()

Bu fonksiyon, Treatment adlı kategorik değişkene göre Result değişkeninin tanımlayıcı istatistiklerini sunar. Deneysel çalışmalarda gruplar arası karşılaştırmalar için oldukça etkilidir.

3️⃣ Gruplara Göre Ortalama (Mean)


df.groupby("Treatment").Result.mean()

Her grup için ortalama değerleri verir ve gruplar arası farkları hızlıca görmenizi sağlar.

Gruplar yoksa:


mean = df.Result.mean()
print('Mean: %.3f' % mean)


4️⃣ Gruplara Göre Medyan


df.groupby("Treatment").Result.median()

Medyan, uç değerlerden etkilenmeyen bir merkezi eğilim ölçüsüdür. Parametrik veya parametrik olmayan test seçiminde yol göstericidir.

5️⃣ Gruplara Göre Varyans


df.groupby("Treatment").Result.var()

Varyans, verinin homojen mi yoksa heterojen mi olduğunu anlamamızı sağlar.

6️⃣ Gruplara Göre Standart Sapma


df.groupby("Treatment").Result.std()

Standart sapma, varyansın kareköküdür ve birimlerle ifade edilir. Bu nedenle yorumlanması daha kolaydır.

7️⃣ Beşli Özet (Five-Number Summary)


from numpy import percentile

quarters = percentile(df["Result"], [25, 50, 75])
min_data, max_data = df["Result"].min(), df["Result"].max()

print('- Min: %.5f' % min_data)
print('- Q1: %.5f' % quarters[0])
print('- Median: %.5f' % quarters[1])
print('- Q3: %.5f' % quarters[2])
print('- Max: %.5f' % max_data)

Beşli özet, aykırı değer tespiti ve kutu grafikleri için temel bir yapı sunar.

8️⃣ Researchpy ile Tanımlayıcı İstatistikler


import researchpy as rp
rp.summary_cont(df["Result"])

Bu tablo; ortalama, standart sapma, standart hata, güven aralığı ve örneklem sayısını tek seferde sunar. Akademik raporlamada oldukça kullanışlıdır.

Neden Bu Analizleri Yapmalıyız?

Tanımlayıcı analiz, veri analizinin en temel ve en hayati aşamasıdır. Veriye hakim olmadan doğru test seçimi, modelleme ve yorumlama yapmak mümkün değildir.

Sonuç ve Öneriler

  • describe() ve groupby() fonksiyonları ilk bakışta hayat kurtarır.
  • Medyan, varyans ve standart sapma verinin dağılım yapısını anlamanızı sağlar.
  • Researchpy gibi araçlar akademik raporlamayı kolaylaştırır.

Tanımlayıcı analiz, sadece sayılarla oynamak değil; veriyi tanımak, anlamak ve ona saygı göstermek demektir.

Daha yeni Daha eski