Bắt đầu ngayBắt đầu miễn phí

Đặc trưng sâu hơn

Ở các bài trước, bạn đã thấy cách kết hợp hai đặc trưng có thể tạo ra đặc trưng bổ sung tốt cho mô hình dự đoán. Trong bài này, bạn sẽ tạo các đặc trưng "sâu" hơn bằng cách gộp tác động của ba biến vào một biến. Sau đó, bạn sẽ kiểm tra xem các đặc trưng sâu và phức tạp hơn có luôn tạo ra bộ dự đoán tốt hơn không.

Bài tập này là một phần của khóa học

Feature Engineering với PySpark

Xem khóa học

Hướng dẫn bài tập

  • Tạo một đặc trưng mới bằng cách cộng SQFTBELOWGROUNDSQFTABOVEGROUND để tạo cột mới Total_SQFT
  • Dùng Total_SQFT để tạo thêm đặc trưng BATHS_PER_1000SQFT với BATHSTOTAL. Nhớ chuẩn hóa Total_SQFT về đơn vị hàng nghìn
  • Dùng describe() để xem min, max và mean mới của đặc trưng vừa tạo BATHS_PER_1000SQFT. Có điều gì lạ không?
  • Tạo hai jointplots() với Total_SQFTBATHS_PER_1000SQFT làm giá trị \(x\) và SALESCLOSEPRICE làm giá trị \(y\) để xem cái nào có độ khớp R**2 tốt hơn. Đặc trưng phức tạp hơn này có mối quan hệ mạnh hơn với SALESCLOSEPRICE không?

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# Create new feature by adding two features together
df = df.____(____, df[____] + df[____])

# Create additional new feature using previously created feature
df = df.____(____, df[____] / (df[____] / ____))
df[[____]].____().show()

# Sample and create pandas dataframe
pandas_df = df.sample(False, 0.5, 0).toPandas()

# Linear model plots
sns.jointplot(x=____, y=____, data=pandas_df, kind="reg", stat_func=r2)
plt.show()
sns.jointplot(x=____, y=____, data=pandas_df, kind="reg", stat_func=r2)
plt.show()
Chỉnh sửa và Chạy Mã