MulaiMulai sekarang secara gratis

Transformasi log

Pada latihan sebelumnya, Anda melakukan penskalaan data secara linear, yang tidak akan mengubah bentuk distribusi data. Pendekatan ini sangat baik jika data Anda berdistribusi normal (atau mendekati normal), sebuah asumsi yang digunakan oleh banyak model Machine Learning. Terkadang Anda akan bekerja dengan data yang mengikuti kenormalan, misalnya tinggi atau berat suatu populasi. Di sisi lain, banyak variabel di dunia nyata tidak mengikuti pola tersebut, misalnya upah atau usia populasi. Pada latihan ini, Anda akan menggunakan transformasi log pada kolom ConvertedSalary di DataFrame so_numeric_df karena banyak nilainya terpusat pada nilai rendah tetapi juga mengandung nilai yang sangat tinggi. Distribusi seperti ini dikatakan memiliki ekor kanan yang panjang.

Latihan ini adalah bagian dari kursus

Rekayasa Fitur untuk Machine Learning di Python

Lihat Kursus

Petunjuk latihan

  • Impor PowerTransformer dari modul preprocessing di sklearn.
  • Instansiasikan PowerTransformer() sebagai pow_trans.
  • Lakukan fit PowerTransformer pada kolom ConvertedSalary dari so_numeric_df.
  • Transformasikan kolom yang sama dengan penakar (scaler) yang baru saja Anda fit.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Import PowerTransformer
from sklearn.preprocessing import ____

# Instantiate PowerTransformer
pow_trans = ____

# Train the transform on the data
____

# Apply the power transform to the data
so_numeric_df['ConvertedSalary_LG'] = ____(so_numeric_df[['ConvertedSalary']])

# Plot the data before and after the transformation
so_numeric_df[['ConvertedSalary', 'ConvertedSalary_LG']].hist()
plt.show()
Edit dan Jalankan Kode