使用 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 中使用機器學習是預測房價的強大工具。透過收集和清理資料、視覺化模式以及訓練和評估我們的模型,我們可以在充滿活力的房地產世界中做出明智的決策。
透過利用高階演算法和資料分析,我們可以做出準確的預測併為決策過程提供資訊。這種方法使買家、賣家和投資者能夠在充滿活力且競爭激烈的市場中做出明智的選擇,最終最大限度地提高他們的機會和成果。