✍️Praktikum 2

Seleksi Fitur, Encoding, dan Standarisasi

Seleksi Fitur

Pada tahap ini kita akan memilih variabel mana saja yang akan kita gunakan sebagai fitur. Pada bagian dasar teori, kita sudah mempelajari bahwa tidak selalu semua variabel dapat digunakan sebagai fitur. Oleh karena itu, kita dapat memilih fitur yang sekiranya penting untuk tujuan yang ingin kita capai dalam membuat model pembelajaran mesin. Kita akan menggunakan kasus yang sama, yaitu kita kita mengetahui ciri-ciri penumpang kapal Titanic yang selamat. Sehingga, fitur yang kita gunakan adalah,

  1. "Survived"

  2. "Pclass"

  3. "Sex"

  4. "Age"

  5. "Cabin"

Kita akan memisahkan variabel-variabel tersebut dari variabel yang lain.

Data yang akan kita gunakan adalah data Titanic yang sudah diperbaiki dengan proses imputasi.

⬇️ Download ⬇️

Langkah 0 - Load Library

import pandas as pd
from sklearn.preprocessing import LabelEncoder, StandardScaler

Langkah 1 - Load Data

dpath = 'data/Titanic-Dataset-fixed.csv'
df = pd.read_csv(dpath)
df.head()

Langkah 2 - Slice Data

Pilih variabel yang kita anggap sebagai fitur

df = df[['Survived', 'Pclass', 'Age', 'Sex', 'Cabin']]
df.head()

Hasilnya

Hasil Slice Fitur

Langkah 3 - Encoding

Kita akan melakukan encoding pada data-data kategorikal, yaitu "Sex" dan "Cabin". Langkah ini perlu dilakukan karena algoritma pembelajaran mesin melakukan proses kalkulasi secara matematis. Strategi yang kita gunakan adalah Label Encoding. Label Encoding serupa dengan Ordinal Encoding, bedanya hanya pada proses pengurutan. Label Encoding tidak mengurutkan data terlebih dahulu.

le = LabelEncoder() # membuat objek dari LabelEncoder
df['Sex'] = le.fit_transform(df['Sex']) # proses encoding
df['Cabin'] = le.fit_transform(df['Cabin']) # proses encoding

Langkah 4 - Verifikasi Hasil

Cek kembali dengan df.head(). Hasilnya akan seperti pada Gambar dibawah ini.

Hasil Encoding

Langkah 5 - Standarisasi

Pada tahapan ini kita akan melakukan standarisasi pada "Age". Hal ini sebetulnya tidak terlalu diperlukan karena nilai pada "Age" tidak terlalu jauh. Tujuan dari langkah ini adalah untuk demonstrasi proses standarisasi.

std = StandardScaler()
df['Age'] = std.fit_transform(df[['Age']])

Langkah 6 - Verifikasi Hasil Standarisasi

Cek kembali dengan df.head(). Hasilnya akan seperti pada Gambar dibawah ini.

Hasil Standarisasi

Kode Lengkap

Last updated

Was this helpful?