Veri Bilimi & Veri Manipülasyonu - Keşfedici Veri Analizi

Tips Veri Seti EDA

Yayın tarihi :23-Ara-21
Bölüm kodlarını ve/veya veri setlerini indir.

Tips veri seti ile ilgili keşfedici veri analizi yapılmıştır. Tips veri setinin hikayesi: Garsonlar tarafından alınan bahşişlerin gün veya yemek öğününe göre değişimini anlatan 244 satırlık bir veri setidir.  

**Not: Verileri grafikselleştirdiğimiz alanda bilmediğiniz grafik şekilleri olabilir. Grafik çizimleri için ileriki konuda Veri Görselleştirmesi adı altında detaylı olarak anlatılmıştır.

import pandas as pd
import numpy as np
import seaborn as sns
#tips veri seti seaborn kütüphanesi altında bulunmaktadır, oradan erişip df e eşitleyelim.
df=sns.load_dataset("tips")

EDA

df.head()

Çıktı:

df.tail()

Çıktı:

df.sample(3)

Çıktı:

df.shape

Çıktı:

(244, 7)
df.info()

Çıktı:

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 244 entries, 0 to 243
Data columns (total 7 columns):
 #   Column      Non-Null Count  Dtype   
---  ------      --------------  -----   
 0   total_bill  244 non-null    float64 
 1   tip         244 non-null    float64 
 2   sex         244 non-null    category
 3   smoker      244 non-null    category
 4   day         244 non-null    category
 5   time        244 non-null    category
 6   size        244 non-null    int64   
dtypes: category(4), float64(2), int64(1)
memory usage: 7.4 KB
df.isnull().sum()

Çıktı:

total_bill    0
tip           0
sex           0
smoker        0
day           0
time          0
size          0
dtype: int64
df.corr()

Çıktı:

sns.heatmap(df.corr(),annot=True)

Çıktı:

df.describe()

Çıktı:

Düzenleme ve verileri grafiklendirme

df.total_bill.plot.box()
#grafik üzerinden de görüldüğü gibi "o" ile gösterilen alanlar outlier(aykırı değer)'dir.
#Ama fazla yüksek değerde olmadığından düzenleme yapılmayabilir, veya aykırı değerler çıkartılabilir.

Çıktı:

df.tip.plot.box()
#grafik üzerinden de görüldüğü gibi "o" ile gösterilen alanlar outlier(aykırı değer)'dir.
#7 değerinden sonra oluşan outlier değerlerini veri setinden kaldıralım

Çıktı:

#outlier değerlerden bazıları kaldırıldı.
df=df[df.tip<7]
df.tip.plot.box()

Çıktı:

df.sex.value_counts().plot.bar()

Çıktı:

df.smoker.value_counts().plot.bar()

Çıktı:

#smoker değerlerini sayısal olarak dönüşüm yapabiliriz.
df.smoker=df.smoker.map(lambda x:0 if x=="No" else 1)
df.smoker=df.smoker.astype(int)
df.smoker.value_counts().plot.bar()

Çıktı:

df.day.value_counts().plot.bar()

Çıktı:

df.time.value_counts().plot.bar()

Çıktı:

df["size"].plot.density()

Çıktı:

#df son durumda
df.head()

Çıktı:

#bazı outlier değerleri çıkarttığımız için veri seti boyutu da düştü
df.shape

Çıktı:

(241, 7)
df.info()

Çıktı:

<class 'pandas.core.frame.DataFrame'>
Int64Index: 241 entries, 0 to 243
Data columns (total 7 columns):
 #   Column      Non-Null Count  Dtype   
---  ------      --------------  -----   
 0   total_bill  241 non-null    float64 
 1   tip         241 non-null    float64 
 2   sex         241 non-null    category
 3   smoker      241 non-null    int32   
 4   day         241 non-null    category
 5   time        241 non-null    category
 6   size        241 non-null    int64   
dtypes: category(3), float64(2), int32(1), int64(1)
memory usage: 17.7 KB
Paylaş:

Yorum Yap (*Yorumunuza kod eklemek isterseniz Kod Parçacığı Ekle butonuna tıklayarak ekleyebilirsiniz.)

Yorumlar

Henüz hiç yorum yapılmamış, ilk yorum yapan sen ol.