قیمت خانه- قسمت 4- feature scaling

در قسمت سوم موضوع feature engineering را پیگیری کردیم. در این قسمت میخواهیم

ابتدا کل فیچرهایی که میخواهیم اسکیل کنیم را انتخاب میکنیم. (همه به جز آیدی و قیمت)

scaling_feature=[feature for feature in dataset.columns if feature not in ['Id','SalePrice'] ]
len(scaling_feature)

با دستور زیر اسکیل کردن را فیت و ترنسفورم میکنیم:

from sklearn.preprocessing import MinMaxScaler # why not standard scaler
my_scaler=MinMaxScaler()
my_scaler.fit(dataset[scaling_feature])
my_scaler.transform(dataset[scaling_feature])

خروجی کد بالا یک آرایه است و در هنگام concat کردن باید آن را به Dataframe تبدیل کنیم:


data = pd.concat([dataset[['Id', 'SalePrice']].reset_index(drop=True),
                    pd.DataFrame(my_scaler.transform(dataset[scaling_feature]), columns=scaling_feature)],
                    axis=1)

با دستور زیر دیتای خود را ذخیره میکنیم. پارامتر index را روی false میگذاریم که دیتای اضافی تولید نشود. (زیرا دیتای ما خودش ایندکس دارد.)

data.to_csv('X_train.csv',index=False)

برای اطلاعات بیشتر به کد گیتهاب رجوع کنید.

جلسه پنجم

منابع:

1- گیتهاب خودم

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.