Proje 1.)Toy Dataset

Taner Sayın
5 min readMay 30, 2020

--

Merhabalar.Veri ile uğraşan çoğu insanların başladığı yerden toy datasetlerden başlayıp sizlere de yardımcı olacağını düşündüğüm küçük örneklerle projemi sunmak istiyorum.

Datasetimizi;
https://www.kaggle.com/carlolepelaars/toy-dataset
Kaggle sitesinden hazır halde veriyi buradan indirerek dosyamızı herhangi bir isimle csv uzantısıyla kaydediyoruz. Ben burada ilk denemem olduğu için deneme_dataset.csv olarak kaydettim.
Öncelikle gerekli Python Kütüphanelerimizi dahil edelim;

Çalışacağımız kütüphanelerimizi dahil ettikten sonra daha önceden kaydettiğimiz .csv uzantılı dosyamızı okuyacağız.Fakat öncesinde dosyamızı gözden geçirdiyseniz başlıklarımızı Türkçeye çevirip kullanabilirliği rahat olması açısından küçük harflerle başlıkları yazdım.Datasetimizin son haline bakalım;

Kolaylık olması açısından şimdilik ilk 5 veriye bakacak olursak;

Verilerle uğraşmadan öğrence onların hangi tipten(int,object,float) olduklarını bilmemiz gerek bunun için;

Burada küçük bir parantez açmak istiyorum. Örneğin gelir değişkeninin float cinsinden değilde integer cinsinden olmasını istiyorsak yani veri tipi türünü değiştirmek istiyorsak küçük bir dönüşüm yapmamız gerekecek.Veriye ilk dokunduğumuzda belki sorun çıkarmayabilir fakat ilerde doğru adımlar izlense dahi bu dönüşümlerin olmaması bize sorun çıkarabilir;

Gördüğünüz gibi artık gelir değişkenimiz ondalıklı sayı(float) cinsinden değil yerine tamsayı(integer) cinsinden almış oldu.

Verilerimiz kolaylık olması açısından;

adlandırarak çağırabiliriz.Şimdi gelelim verinin içeriğine ve aklımıza gelen sorulara , ilk başta verimizi okuduğumuzda 150000 gözlem birimimiz 6 adet de değişkenimiz mevcuttu.Elimizdeki değişkenlerin durumlarını inceleyelim;

Aklımıza gelen sorulardan birkaç tanesi veri grubumuzdaki yaş ortalaması nedir?Grubumuzun aylık maaş ortalama durumları nedir?Yıllık ortalama gelirleri gibi sayısal işlemlere sırayla bakacağız.Fakat öncesinde bilmeyenler için round() fonksiyonuna küçük bir örnekle göstermek istiyorum;

round(a,2) ifadesiyle a değişkenin virgülden sonra 2 elemanını yazdır demiş oluyoruz.Daha önceden yarım kalmış sorumuza dönersek;

Bulduğumuz sonuçların daha genel ve düzgün bir tabloda görmek için describe() fonksiyonundan yararlanabiliriz;

T = transpose ,drop() istemediğimiz veriyi göstermez düşürür

Peki ya grubumuzun yıllık geliri ortalamanın üzerinde olanlar? Pandas sayesinde bunu görmek oldukça kolay .Elimizdeki veri sayısı fazla olduğundan ilk 10 veriye bakacak olursak;

Ortalama yıllık gelirin üzerinde olanları bulabildik.Bulduğumuz sonuca bir değişken eklemek istersek örneğin ; gelir düzeyi ortalama gelir üzerinde veya ortalama gelire eşit VE yaşı ortalama yaştan küçük veya eşit olanları bulmak istersek ;

and operatörü karşılığı pandas kütüphanesinde ‘&’ dır.

Açıklaması her ne kadar zor olsa da kullanımı bir o kadar kolay.

Veri setinde kendimizin istediği değişkenleri almak için başvuracağımız örnekte; Bu sefer 40 yaş üstü ve hastalığı olmayan kişilere bakalım fakat bu sefer bu sonuçlarda yalnızca cinsiyet ve gelir sonuçlarını ekranda görmek istersek;

40 yaş üstü ve hastalığı olmayan kişilerin cinsiyetleri ve gelirlerini yazdırmış olduk.

Groupby

Bir diğer soru ; Elimizde bulunan veri setinde şehirlere göre ortalama gelir düzeyini görmek için ne yapacağız?Bunun için groupby işlemi kullanmamız gerekecek.Bunu yapabilmemiz için yazmadan önce bazı soruları kendimize sormamız gerek ; Neye göre? Ney? Nesi? İlk başta saçma gelen bir kaç soru yazıldıktan sonra çokta mantıklı gelecek.

Neye göre ? Şehir değişkenine göre ,Ney ? Gelir değişkeni ,Nesi ? Ortalaması

Her ne kadar kompleks olsa da oldukça başvurulacak bir işlem groupby()

Bir diğer groupby işlemi için cinsiyete göre gelir düzeylerinin sırasıyla en fazla,en az ve ortalamalarını görmek için;

Groupby kullanmadan kendimiz bir şeylere erişmemiz de mümkün ;

Veri setimizde 6 adet değişken mevcuttu ve bir yenisini eklemek istersek örneğin ; kişinin aylık geliri tablomuzda mevcut değil.Tablomuza veri eklemek için;

Böylece artık değişken sayımız 7 olmuş oldu .

Görselleştirme

Biraz da elimizdeki verileri grafiğe dökmek en azından temel düzeyde oldukça gerekli.Mesela şehirleri grafiğe dökmek ile başlayabiliriz;

Grubun cinsiyeti için grafik;

Hastalık ;

Verimiz birden fazla değişkene tabi tutarsak(cinsiyet ve gelir için olsun örneğimiz) ve bunu Seaborn kütüphanesi yardımıyla oluşturmak için;

Bu grafiğimize bir üçüncü boyut veyahut üçüncü bir değişken ekleyerek yapmak istersek;

Seaborn kütüphanesinde içlerinde en kullanışlılarından biri de boxplot.Boxplot yardımıyla elimizdeki kişilerin yaş aralığını grafiğe dökebiliriz;

Son olarak Violin türünde grafik ile görselleştirmek belki de içlerinden yığılma konusunda yardımcı olacak en iyi grafik türlerinden biri.2 boyutlu bir eksen düşünelim bunun yatay kısmı yani x ekseni hastalık değişkenimiz olsun,dikey kısmı yani y eksenimizde gelir değişkenimiz olsun ve üçüncü boyut olarak ise cinsiyet değişkenini catplota vererek grafik türümüzü violin seçersek;

elde etmiş oluruz.

Kendimce sizlere yardımcı olması açısından küçük bir örnek yaptım.Umarım yararlı olmuştur.Değerli vaktini ayırdığın için teşekkür ederim.

--

--

No responses yet