Python ile Excel Verilerini Filtreleme ve Boxplot ile Görselleştirme

Python ile Excel Verilerini Filtreleme ve Boxplot ile Görselleştirme (Pandas & Seaborn Rehberi)

Gerçek hayatta analiz etmek istediğimiz veriler çoğu zaman oldukça karmaşık ve dağınık şekilde karşımıza çıkar. Bu verileri düzenli bir biçimde analiz edebilmek için genellikle ilk adım olarak Excel dosyası içinde saklamak tercih edilir. Ancak veri miktarı arttıkça Excel tek başına yeterli olmayabilir. İşte bu noktada Python, özellikle de Pandas ve Seaborn gibi güçlü kütüphaneler sayesinde büyük kolaylık sağlar.

Python ile Excel verilerini filtrelemek, yeniden düzenlemek, birleştirmek ve görselleştirmek son derece pratiktir. Pandas kütüphanesi sayesinde Series ve DataFrame yapıları üzerinde set mantığı, indeksleme ve ilişkisel cebir işlemleri uygulanabilir. Ayrıca iki veri çerçevesi arasındaki farkları karşılaştırmak ve özetlemek de oldukça kolaydır.


Bu Yazıda Ne Öğreneceksiniz?

Bu blog yazısında Excel dosyasındaki verileri filtreleme ve filtrelenmiş verileri boxplot grafiği ile görselleştirme adımlarını inceleyeceğiz.

İş Akışı

  1. Excel dosyasını okuma
  2. Belirli bir sütuna göre filtreleme
  3. Belirli parametrelere göre detaylı filtreleme
  4. Filtrelenen verileri birleştirme
  5. Boxplot ile görselleştirme


1️⃣ Excel Dosyasını Okuma

Öncelikle Pandas kütüphanesini içe aktararak Excel dosyasını okuyalım. Eğer sheet_name belirtmezseniz, Excel dosyasının ilk sayfası okunacaktır.

import pandas as pd

df = pd.read_excel('C:/database.xlsx')
df.head(5)

df.head(5) komutu veri çerçevesinin ilk 5 satırını göstererek veri yapısını kontrol etmemizi sağlar.


2️⃣ Belirli Sütuna Göre Filtreleme

Şimdi "Treatment" sütununda Control olan ve "Time" sütununda 6 saat değerine sahip satırları filtreleyelim.

df_6 = df[(df['Treatment'] == 'Control') & (df['Time'] == 6)]
df_6.head(5)

Bu kod iki koşulu aynı anda uygulayarak ilgili satırları yeni bir veri çerçevesine aktarır.


3️⃣ Farklı Zaman Noktalarına Göre Filtreleme

Aynı işlemi 18, 30 ve 42 saat için de yapalım:

df_18 = df[(df['Treatment'] == "Control") & (df['Time'] == 18)]
df_30 = df[(df['Treatment'] == "Control") & (df['Time'] == 30)]
df_42 = df[(df['Treatment'] == "Control") & (df['Time'] == 42)]


4️⃣ Filtrelenen Verileri Birleştirme

Şimdi bu dört veri çerçevesini tek bir veri çerçevesinde birleştirelim:

result = pd.concat([df_6, df_18, df_30, df_42])
display(result)

pd.concat() fonksiyonu birden fazla DataFrame’i birleştirerek tek bir yapı oluşturur.


5️⃣ Boxplot ile Görselleştirme

Filtrelenen verileri boxplot grafiği ile görselleştirelim. Öncelikle Seaborn kütüphanesini içe aktaralım:

import seaborn as sns

sns.boxplot(y="Result", x="Time", data=result, palette="inferno")

Bu grafik, Control grubunda 6., 18., 30. ve 42. saatlerdeki dağılımı gösterir.


Outlier (Aykırı Değer) Temizleme

Grafikte aykırı değerler varsa dağılım doğru görünmeyebilir. Bu durumda belirli bir aralıkta filtreleme yapabiliriz:

filtered_result = result[result["Result"].between(0.0, 0.50)]

sns.boxplot(y="Result", x="Time", data=filtered_result, palette="rocket")

Bu işlem 0.0 ile 0.50 arasındaki değerleri alarak aykırı verileri dışarıda bırakır.


Farklı Renk Paletleri Kullanma

Seaborn farklı renk paletleri sunar. Örneğin:

sns.boxplot(y="Result", x="Time", data=filtered_result, palette="pastel")

Böylece grafik estetiğini ihtiyacınıza göre özelleştirebilirsiniz.



Tüm Kodların Birleştirilmiş Hali

import pandas as pd
import seaborn as sns

df = pd.read_excel('C:/database.xlsx')

df_6  = df[(df['Treatment']=="Control") & (df['Time']==6)]
df_18 = df[(df['Treatment']=="Control") & (df['Time']==18)]
df_30 = df[(df['Treatment']=="Control") & (df['Time']==30)]
df_42 = df[(df['Treatment']=="Control") & (df['Time']==42)]

result = pd.concat([df_6, df_18, df_30, df_42])

filtered_result = result[result["Result"].between(0.0, 0.50)]

sns.boxplot(y="Result", x="Time", data=filtered_result, palette="inferno")


Sonuç

Excel veri analizi için güçlü bir araçtır. Ancak Python ile birlikte kullanıldığında analiz kapasitesi katlanarak artar. Pandas sayesinde verileri kolayca filtreleyebilir, birleştirebilir ve düzenleyebilirsiniz. Seaborn ile ise profesyonel görünümlü grafikler oluşturabilirsiniz.

Excel + Python kombinasyonu, veri analizi ve raporlama süreçlerinizi çok daha güçlü hale getirir. Bu blogda Python ve Excel kullanarak yapılabilecek küçük ama etkili iş akışlarını paylaşmaya devam edeceğim. Yeni içeriklerden haberdar olmak için blogu takip etmeyi unutmayın.

Daha yeni Daha eski