Modellemeye hazırlık

Python ile Pazarlama için Machine Learning

Karolis Urbonas

Head of Analytics & Science, Amazon

Veri örneği

telco_raw.head()

Telekom veri başlığı

Python ile Pazarlama için Machine Learning

Veri tipleri

telco_raw.dtypes
customerID           object
gender               object
SeniorCitizen        object
Partner              object
Dependents           object
tenure                int64
PhoneService         object
MultipleLines        object
InternetService      object

OnlineSecurity       object
OnlineBackup         object
DeviceProtection     object
TechSupport          object
StreamingTV          object
StreamingMovies      object
Contract             object
PaperlessBilling     object
PaymentMethod        object
MonthlyCharges      float64
TotalCharges        float64
Churn                object
Python ile Pazarlama için Machine Learning

Kategorik ve sayısal sütunları ayırma

Tanımlayıcı ve hedef değişken adlarını listeleyin

custid = ['customerID']
target = ['Churn']

Kategorik ve sayısal sütun adlarını listeleyin

categorical = telco_raw.nunique()[telcom.nunique()<10].keys().tolist()

categorical.remove(target[0])
numerical = [col for col in telco_raw.columns if col not in custid+target+categorical]
Python ile Pazarlama için Machine Learning

One-hot kodlama

Bu tipik bir kategorik sütundur

Renk
Kırmızı
Beyaz
Mavi
Kırmızı
Python ile Pazarlama için Machine Learning

One-hot kodlama sonucu

Bir-kodlu (one-hot) kodlama uyguladığımızda görünüm şöyledir.

Renk Kırmızı Beyaz Mavi
Kırmızı ----------> 1 0 0
Beyaz ----------> 0 1 0
Mavi ----------> 0 0 1
Kırmızı ----------> 1 0 0
Python ile Pazarlama için Machine Learning

Kategorik değişkenleri one-hot kodlama

Kategorik değişkenlere one-hot kodlama

telco_raw = pd.get_dummies(data=telco_raw, columns=categorical, drop_first=True)
Python ile Pazarlama için Machine Learning

Sayısal özellikleri ölçekleme

# Import StandardScaler library
from sklearn.preprocessing import StandardScaler

# Initialize StandardScaler instance scaler = StandardScaler()
# Fit the scaler to numerical columns scaled_numerical = scaler.fit_transform(telco_raw[numerical])
# Build a DataFrame scaled_numerical = pd.DataFrame(scaled_numerical, columns=numerical)
Python ile Pazarlama için Machine Learning

Hepsini bir araya getirme

# Drop non-scaled numerical columns 
telco_raw = telco_raw.drop(columns=numerical, axis=1)

# Merge the non-numerical with the scaled numerical data telco = telco_raw.merge(right=scaled_numerical, how='left', left_index=True, right_index=True )
Python ile Pazarlama için Machine Learning

Veri ön işleme yapalım!

Python ile Pazarlama için Machine Learning

Preparing Video For Download...