Merhaba arkadaşlar, bu derste verilerimizi nasıl kategorik bir tablo yapısında göserebileceğimizi öğreneceğiz. Bu ne işimize yarayacak derseniz, bazı veriler numerik değilse bunları işlemek için gruplamanız gerekmektedir. daha önce bahsettiğimiz ülke tablomuzdaki tr, fr, us verilerinin herbirini ilk önce bir değer atayıp sonra bir tabloda bu değerleri göstereceğiz.
Önceki derslerde veriler tablomuzu hatırlayın. Bu tablo içindeki sadece ülke verisini aşağıdaki gibi çekiyoruz.
ulke = veriler.iloc[:,0:1].values print(ulke)
Sonuç
[['tr'] ['tr'] ['tr'] ['tr'] ['tr'] ['tr'] ['tr'] ['tr'] ['tr'] ['us'] ['us'] ['us'] ['us'] ['us'] ['us'] ['fr'] ['fr'] ['fr'] ['fr'] ['fr'] ['fr'] ['fr']]
Daha sonra ülke kodlarını sırayla vererek kategorik tablomuzu oluşturuyoruz.
Daha sonra aşağıdaki kod ile sklearn kütüphanesini kullanarak bu veriyi encode edeceğiz. sklearn kütüphanesinde sorun yaşarsanız scikit-learn=0.21.3 sürümünü yükleyebilirsiniz.
# labelencoder stringleri sayısal verilere dönüştürmeye yarar from sklearn.preprocessing import LabelEncoder, OneHotEncoder # bu sınıfta bir nesne oluştur le = LabelEncoder() # ulke isimlerini sayısal değerlere dönüştür ulke[:,0] = le.fit_transform(ulke[:,0]) print(ulke) # transform matrisine göre düzenle ohe = OneHotEncoder(categorical_features='all') ulke = ohe.fit_transform(ulke).toarray() print(ulke)
Son olarak encode yaptığımız ülkeleri transform matrsinde gösteriyoruz.
[[0. 1. 0.] [0. 1. 0.] [0. 1. 0.] [0. 1. 0.] [0. 1. 0.] [0. 1. 0.] [0. 1. 0.] [0. 1. 0.] [0. 1. 0.] [0. 0. 1.] [0. 0. 1.] [0. 0. 1.] [0. 0. 1.] [0. 0. 1.] [0. 0. 1.] [1. 0. 0.] [1. 0. 0.] [1. 0. 0.] [1. 0. 0.] [1. 0. 0.] [1. 0. 0.] [1. 0. 0.]]
İyi çalışmalar,
0 yorum