🧮Praktikum 3

(Sekilas) Seleksi Fitur, Encoding, dan Standardisasi

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 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

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.

Langkah 5 - Standarisasi

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

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.

Last updated