Menu
CoddyTech

Siapkan Data

Termasuk bagian Pembelajaran Terawasi dalam perjalanan Machine Learning di Coddy. Pelajaran 51 dari 58.

Sebuah model hanya membaca baris angka yang lengkap. Data penguin memiliki nilai yang hilang dan dua kolom teks, jadi setiap kolom melewati jalurnya sendiri:

Diagram satu penguin pelatihan. Keempat ukurannya melewati jalur biru, diisi dengan median lalu diskalakan, dan menghasilkan -0.79, 0.00, -0.05, dan -0.90. Pulau Biscoe dan jenis kelaminnya yang tidak diketahui melewati jalur oranye, diisi dengan unknown lalu diubah menjadi one-hot, dan menghasilkan enam kolom bernilai 0 atau 1

Nilai teks yang kosong diisi dengan kata "unknown": penguin yang jenis kelaminnya tidak tercatat mendapat kolom sendiri, bukan tebakan.

text_steps = make_pipeline(
    SimpleImputer(strategy="constant", fill_value="unknown"),
    OneHotEncoder())

Fit jalurnya hanya pada baris training. Median yang sudah melihat penguin test akan membocorkan data tersebut ke training.

challenge icon

Tantangan

Sedang

Penguin membutuhkan jalur-jalur dari gambar. Kode awal memisahkan data tersebut dan membaca nomor baris.

  1. Buat prep, sebuah ColumnTransformer yang mengirim numbers ke jalur angka dan text ke jalur teks.
  2. Fit pada baris pelatihan dan transformasikan baris-baris tersebut dalam satu pemanggilan.
  3. Cetak ukuran dan nilai kosong sebelumnya, ukuran setelahnya, lalu baris tersebut setelah diproses, dengan 2 angka desimal.

Untuk koloni lain dan baris 3:

Before: 180 penguins, 6 columns, 9 gaps
After: 180 penguins, 10 columns
Penguin 3: [-1.12  0.47 -0.83 -0.6   0.    1.    0.    0.    1.    0.  ]

Baris 14 adalah penguin yang tidak bisa diukur siapa pun. Akan menjadi apa penguin tersebut?

Coba sendiri

import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.compose import ColumnTransformer
from sklearn.pipeline import make_pipeline
from sklearn.impute import SimpleImputer
from sklearn.preprocessing import StandardScaler, OneHotEncoder

# Koloni dari Meet the Penguins, beserta fitur dan labelnya
penguins = pd.read_csv("penguins.csv")
numbers = ["bill_length_mm", "bill_depth_mm", "flipper_length_mm", "body_mass_g"]
text = ["island", "sex"]
X = penguins[numbers + text]
y = penguins["species"]

# Bagi data terlebih dahulu: penguin untuk pengujian tetap disimpan terpisah hingga Ship the Model
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, stratify=y, random_state=0)
row = int(input())

# Tulis kodemu di bawah ini
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Pembelajaran Terawasi

Latihan sendiri: Compiler Python online