Ketika saya membaca tentang menggunakan StandardScaler
, sebagian besar rekomendasi mengatakan bahwa Anda harus menggunakan StandardScaler
sebelum membagi data menjadi kereta / tes, tetapi ketika saya memeriksa beberapa kode yang diposting online (menggunakan sklearn) ada dua kegunaan utama.
1- Menggunakan StandardScaler
pada semua data. Misalnya
from sklearn.preprocessing import StandardScaler
sc = StandardScaler()
X_fit = sc.fit(X)
X_std = X_fit.transform(X)
Atau
from sklearn.preprocessing import StandardScaler
sc = StandardScaler()
X = sc.fit(X)
X = sc.transform(X)
Atau sederhananya
from sklearn.preprocessing import StandardScaler
sc = StandardScaler()
X_std = sc.fit_transform(X)
2- Menggunakan StandardScaler
data terpecah.
from sklearn.preprocessing import StandardScaler
sc = StandardScaler()
X_train = sc.fit_transform(X_train)
X_test = sc.transform (X_test)
Saya ingin membakukan data saya, tetapi saya bingung metode mana yang terbaik!
sumber
Bagaimana dengan yang berikut:
Karena jika
X_test = sc.transform(X_test)
, itu mengembalikan kesalahanX_test
belum pas. Atau apakah saya melewatkan sesuatu di sini?sumber
Anda seharusnya tidak melakukan fit_transform (X_test) pada data pengujian.
Kecocokan sudah terjadi di atas.
sumber