Merhaba! Bugün sizler ile Veri Analizi ile ilgili yaptığım projelerimi anlatacağım. Toplamda 4 proje yaptım ve sizlere bu gönderide bir tanesini anlatacağım!
Veri Seti Düzenleme
Veriseti Kaggle Adresi: https://www.kaggle.com/datasets/lepchenkov/usedcarscatalog
Ayrıntılı Jupiter Notebook için GitHub adresi : https://github.com/denizzhansahin/data-analysis/blob/main/lessons-project/cars.ipynb
Veri Seti Özellikleri
Veri seti, 38531 satır ve 30 sütundan oluşmaktadır.
manufacturer_name : Uretici adı.
model_name: Otomotivlerin model isimleri alır.
transmission : Araçların vites türüdür.
odometer_value : Araçların kilometre türünden kullanımını belirtir.
year_produced : Araçların üretim yıllarını belirtir.
engine_fuel : Araçların yakıt türünü belirtir.
engine_has_gas : Araçların motor tiplerini belirtir.
engine_capacity : Araçların motor kapasitesi belirtilir.
body_type : Araçların gövde tipini belirtir.
has_warranty : Araçların sigorta durumunu belirtir.
state : Araçların kullanım durumu hakkında bilgi verir.
price_usd : Araçların fiyatlarını belirtir.
is_exchangeable : Araçların değiştirme durumunu belirtir.
location_region : Araçların Rusya’da yer alan şehirlerdeki sayılarını belirtir.
color : Araçların renklerini belirtir.
feature_1 ve feature_8 olan sütunlar ise açık bir bilgi sağlamadığı için incelemeye alınmamıştır.
Engine_capacity için 10 boş veri alanı vardır. Fillna ile 0 ile doldurulmuştur.
Araç marka sayısı 50’den fazladır. En çok Volkswagen , 4243 adet ile fazladır. 36 araç iile Great Wall markası yer almaktadır.
En çok Passat modeli 1423 adet bulunmaktadır. C1500, Alero, Impala, Aspen gibi modeller ise 1’er adet bulunmaktadır.
Vites türü açısından ise mekanik olarak 25633 araç bulunmaktadır ve otomatik araç sayısı ise 12898 araç yer almaktadır.
Araçların çoğunluğu kilometre açısından fazla kullanılmıştır. Örnek olarak 300.000 km değerinde 1794 araç yer almaktadır.
Arabaların üretim yıllarında ise 1998 yılına ait araçların sayısı 2218 ile ilk sırada yer almaktadır. En az olarak ise 1959 yılı başta olmak üzere eski yıllarda üretilen 1 araç yer almaktadır.
Yakıt türü açısından ise Gasoline(normal yakıt) olmak üzere 24065 araç yer almaktadır.
Motor gazı olarak ise 37184 araç için LPG desteği bulunmamaktadır ve 1347 araç için ise LPG desteği bulunmaktadır.
Motor kapasitesi açısından ise en çok yer alan 2.0 kapasitesine sahip 7670 araç, 1.6 kapasitesine sahip 6188 araçlar yer almaktadır.
Gövde tipi olarak ise sedan tipi 13011 ile en çok araç sayısıdır ve limousine sayısı ise 12 tane ile en az araç sayısıdır.
Sigorta durumunda ise 38082 araç için sigorta yoktur ve 449 için ise sigorta vardır.
Araç kullanımı ise daha önce sahip olunan araç sayısı 37723, yeni araç sayısı 438, acil kullanım amaçlı araç sayısı ise 370 tanedir.
Araçların fiyatı açısından ise 1500 USD ile 637 araç en fazla yer alırken 9130 USD başta olmak üzere bazı fiyatlar için 1 araç yer almaktadır.
Değiştirme sayısı ise 24945 araç değişim yer almamaktadır ve 13586 araç için ise değişim yer almaktadır.
En çok renk ise black ile 7705 adet olmak üzere araç vardır ve en az renk açısından ise 184 ile orange rengine sahip araç vardır.
Veri Görselleştirme
Matplotlib ile bir figure oluşturulmuş ve 10,10 parsel alanı açılmıştır. Barh grafiği ile önce y sonra x değerleri ile görselleştirme yapılmıştır. Title ile ise tablo adı oluşturulmuştur.
Diğer grafikler için ise 20,15 parsel alanı ile figure oluşturulmuştur ve3,3 düzlem oluşturulmuştur ve 9 tablo oluşturulmuştur.
Engine_capacity için 10 adet boş yer Fillna ile 0 ile doldurulmuştur. Sklearn Preprocessing içinde yer alan LabelEncoder ile sayısal olmayan veriler sayısal verilere dönüştürülmüştür. Bunun için fit_transform fonksiyonu kullanılmıştır. Daha sonra ise feature_ ile başlayan sütunlar drop fonksiyonu ile kaldırılmıştır ve dahaa sonra bu yöntemden vazgeçişmiş ve feature_ ile başlayan sütunlar yeniden eklenmiştir.
Veri Seti için Korelasyon
Birbiri ile ilişki açısından veri seti kullanılabilir durumdadır ve feature_ isimli sütunların etkisi çok önemli olduğu anlaşılmaktadır.
Makine Öğrenmesi için Veri Ayırma
Y ile istenenen değer price_usd tahmin edilmesi için belirlenmiştir. X için ise diğer sütunlar tahmin amaçlı kulllanılacaktır. Ayrıca x_train, x_test, y_train ve y_test için ise Sklearn Model Selection ile train_test_split ile X ve Y değerlerinden ilgili ayırma işlemi alınmıştır. Daha sonra bu değerler için Sklearn Preprocessing MinMaxScaler ile değerler bellir bir aralığa indirgenmiştir. Bunun için ise x_train ve x_test kullanılmıştır.
Sklearn RandomForestRegressor ile Tahmin
İlgili değerler için 10 tane karar ağacı yapısı kullanılmıştır.
TensorFlow ile Tahmin
Üç tane katman yer almaktadır. İlk katman 30 nöron ile ve diğer katmanlar ise 15 nöron ile oluşturulmuştur. ReLu fonksiyonu ile aktivasyon fonksiyonu seçilmiştir. Loss fonksiyonu için ise Mean SquaredError ve optimizer için Adam fonksiyonu kullanılmıştır. Daha sonra model eğitimi, model eğtimi ile ilgili loss grafiği görselleştirme ve model tahmini yapılmıştır.
Tags:
deep learning
derin öğrenme
Ders Notlarım
machine learning
makine öğrenmesi
matplotlib
numpy
pandas
tensorflow
Veri Analizi
veri_analizi
yapay zeka