使用 Python 進行機器學習的房價預測


隨著機器學習在使用 Python 預測房價方面的強大功能的引入,徹底改變了房地產行業。在本文中,我們探索了使用尖端機器學習技術進行房價預測的動態世界。透過利用 Python 中資料分析、特徵工程和模型訓練的巨大潛力,我們旨在提供一份全面的指南,使讀者能夠掌握在不斷變化的住房市場中做出明智決策的工具。

線性迴歸用於房價預測

線性迴歸是一種主要用於房價預測的技術,因為它簡單易懂。它假設自變數(例如臥室數量、浴室數量和麵積)與因變數(房價)之間存線上性關係。透過將線性迴歸模型擬合到歷史資料,我們可以估計表示目標變數和特徵之間關係的係數。這使我們能夠透過將特徵值乘以各自的係數並將它們加起來,對新資料進行預測。線性迴歸提供了對每個特徵對房價影響的見解,使我們能夠了解不同因素的重要性,並在房地產市場中做出明智的決策。

使用機器學習進行房價預測

機器學習涉及訓練計算機根據資料識別模式並進行預測。在房價預測的情況下,我們可以使用房屋各種特徵的歷史資料(例如其位置、大小和設施)來訓練機器學習模型。一旦模型訓練完成,它就可以分析給定房屋的新資料並預測其市場價值。

使用機器學習進行房價預測(線性迴歸模型)

按照以下步驟執行使用機器學習預測房價的操作:

我們使用了 Kaggle kc_house_data 資料集。

  • 匯入所需的庫和模組,包括用於資料操作的 pandas、用於機器學習演算法的 scikit-learn 以及用於線性迴歸模型的 LinearRegression。

  • 使用 pd.read_csv 載入所需的資料集,並選擇我們想要用於預測的特徵(例如,臥室、浴室、sqft_living、sqft_lot、樓層和郵政編碼),以及目標變數(價格)。

  • 使用 train_test_split 函式將資料分成訓練集和測試集,其中 80% 的資料用於訓練,20% 用於測試。

  • 使用 LinearRegression() 建立線性迴歸模型的例項。然後,我們透過使用訓練資料呼叫 fit() 函式來執行模型訓練。

  • 模型訓練完成後,我們使用 predict 對測試資料集進行預測,並將結果儲存在 y_pred 中。

  • 為了評估模型的效能,我們使用 score 計算測試集的 R^2 分數。

  • 演示如何透過建立一個包含房屋特徵的新資料框 new_house 來預測新房子的價格。我們將此資料框傳遞給模型的預測函式以獲得預測價格。

示例

from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
import pandas as pdd

# Loading the dataset
data_h = pdd.read_csv('kc_house_data.csv')

# Selecting the features and target variable
Features1 = ['bedrooms', 'bathrooms', 'sqft_living', 'sqft_lot', 'floors', 'zipcode']
target = 'price'
X1 = data_h[features1]
y1 = data_h[target]

# We will perform the data splitting into training and testing sets
X_train, X_test, y_train, y_test = train_test_split(X1, y1, test_size=0.2, random_state=42)

# instance of the Linear Regression model creation 
model = LinearRegression()

# Training the model
model.fit(X_train, y_train)

# Making predictions on the test set
y_pred = model.predict(X_test)

# Evaluating the model
score = model.score(X_test, y_test)
print("Model R^2 Score:", score)
# Predicting the price of a new house
new_house = pdd.DataFrame({'bedrooms': [2], 'bathrooms': [2.5], 'sqft_living': [600], 'sqft_lot': [600], 'floors': [2], 'zipcode': [98008]})
predicted_price = model.predict(new_house)
print("Predicted Price:", predicted_price[0])

輸出

C:\Users\Tutorialspoint>python image.py
Model R^2 Score: 0.5152176902631012
Predicted Price: 121215.61449578404

結論

總之,在 Python 中使用機器學習是預測房價的強大工具。透過收集和清理資料、視覺化模式以及訓練和評估我們的模型,我們可以在充滿活力的房地產世界中做出明智的決策。

透過利用高階演算法和資料分析,我們可以做出準確的預測併為決策過程提供資訊。這種方法使買家、賣家和投資者能夠在充滿活力且競爭激烈的市場中做出明智的選擇,最終最大限度地提高他們的機會和成果。

更新於: 2023-07-24

3K+ 閱讀量

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告