機器學習 day6 -線性回歸練習

題目?:

  1. 從Kaggle的“House Prices - Advanced Regression Techniques”數據集
  2. 使用Pandas讀取數據,并查看數據的基本信息。
  3. 選擇一些你認為對房屋價格有重要影響的特征,并進行數據預處理(如缺失值處理、異常值處理等)。
  4. 使用matplotlib繪制特征與目標變量(房屋價格)之間的散點圖或箱線圖,觀察它們之間的關系。
  5. 將數據分為訓練集和測試集。
  6. 使用numpy或scikit-learn搭建一個線性回歸模型,并在訓練集上進行訓練。
  7. 在測試集上評估模型的性能,并計算均方誤差(MSE)或均方根誤差(RMSE)。
  8. 嘗試使用不同的特征組合或進行特征選擇,觀察模型性能的變化。
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LinearRegression# 中文顯示
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False# 使用Pandas讀取數據,并查看數據的基本信息。
data = pd.read_csv('./train.csv')
print(data.head())# 選擇一些你認為對房屋價格有重要影響的特征,并進行數據預處理(如缺失值處理、異常值處理等)。
# 判斷是否有缺失值
print(data.isnull().sum())
# 使用中位數填充缺失值
data['LotFrontage'] = data['LotFrontage'].fillna(data['LotFrontage'].median())
data['MasVnrArea'] = data['MasVnrArea'].fillna(data['MasVnrArea'].median())
data['GarageYrBlt'] = data['GarageYrBlt'].fillna(data['GarageYrBlt'].median())
# 異常值處理
data = data[data['SalePrice'] < 500000]# 使用matplotlib繪制特征與目標變量(房屋價格)之間的散點圖或箱線圖,觀察它們之間的關系。
plt.scatter(data['GrLivArea'], data['SalePrice'], alpha=0.5)
plt.title('住房面積與房價的關系')
plt.xlabel('住房面積')
plt.ylabel('房價')
plt.show()# 選擇數值型特征
numeric_features = data.select_dtypes(include=[np.number]).columns.tolist()
numeric_features.remove('SalePrice')  # 移除目標變量# 將數據分為訓練集和測試集。
x = data[numeric_features]  # 只使用數值型特征
y = data['SalePrice']# 特征工程(標準化)
transfer = StandardScaler()
# 將數值型特征進行標準化
x = transfer.fit_transform(x)# 使用scikit-learn搭建一個線性回歸模型,并在訓練集上進行訓練。
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.2, random_state=42)
model = LinearRegression()
model.fit(x_train, y_train)# 在測試集上評估模型的性能,并計算均方誤差(MSE)或均方根誤差(RMSE)。
y_predict = model.predict(x_test)
mse = np.mean((y_predict - y_test) ** 2)
rmse = np.sqrt(mse)
print(f"均方誤差(MSE):{mse}")
print(f"均方根誤差(RMSE):{rmse}")plt.show()
Pytorch) c:\Users\Wennight531\Desktop\機器學習\day6>D:/Anaconda/envs/Pytorch/python.exe c:/Users/Wennight531/Desktop/機器學習/day6/House_prices.pyId  MSSubClass MSZoning  LotFrontage  LotArea Street Alley  ... MiscFeature MiscVal MoSold YrSold SaleType SaleCondition SalePrice
0   1          60       RL         65.0     8450   Pave   NaN  ...         NaN       0      2   2008       WD        Normal    208500       
1   2          20       RL         80.0     9600   Pave   NaN  ...         NaN       0      5   2007       WD        Normal    181500       
2   3          60       RL         68.0    11250   Pave   NaN  ...         NaN       0      9   2008       WD        Normal    223500       
3   4          70       RL         60.0     9550   Pave   NaN  ...         NaN       0      2   2006       WD       Abnorml    140000       
4   5          60       RL         84.0    14260   Pave   NaN  ...         NaN       0     12   2008       WD        Normal    250000       [5 rows x 81 columns]
Id                 0
MSSubClass         0
MSZoning           0
LotFrontage      259
LotArea            0...
MoSold             0
YrSold             0
SaleType           0
SaleCondition      0
SalePrice          0
Length: 81, dtype: int64
均方誤差(MSE):784419750.0907469
均方根誤差(RMSE):28007.494534333964

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/80225.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/80225.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/80225.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

緩存(2):數據一致性

概述 一致性就是數據保持一致,在分布式系統中,可以理解為多個節點中數據的值是一致的。 強一致性:這種一致性級別是最符合用戶直覺的,它要求系統寫入什么,讀出來的也會是什么,用戶體驗好,但實現起來往往對系統的性能影響大弱一致性:這種一致性級別約束了系統在寫入成功…

CH579 CH573 CH582 CH592 藍牙主機(Central)實例應用講解

藍牙主機&#xff08;Central&#xff09;&#xff0c;顧名思義&#xff0c;就是一個藍牙主設備&#xff0c;與從機&#xff08;Peripheral&#xff09;建立連接進行通信&#xff0c;可以接收從機通知&#xff0c;也可以給從機發送信息&#xff0c;通常Central和Peripheral結合…

不同類型的 SAP 項目

目錄 1 實施項目 2 SAP S/4 HANA 升級項目 3 數據遷移項目 4 優化項目 5 Rollout 項目 6 運維項目 1 實施項目 企業第一次用 SAP 系統&#xff0c;從硬件搭建到安裝 SAP、根據業務流程做配置、開發、培訓業務、測試系統直到系統上線。 SAP S/4 HANA ACTIVATE 實施方法論…

【uniapp】errMsg: “navigateTo:fail timeout“

項目場景&#xff1a; 在點擊編輯的時候不能跳轉的編輯的頁面&#xff0c;然后直接報錯errMsg: "navigateTo:fail timeout" 解決方案&#xff1a; 看看是否是出現了盒子的冒泡事件導致了兩次調用跳轉路徑 tap.stop

記錄學習的第三十五天

今天主攻單源最短路Dijkstra算法。不過&#xff0c;還是沒有完全掌握。 首先是書本的例題我理解了一遍。 然后其實在力扣上做了三道題的&#xff0c;但是我看題解的情況就不太會。然后試著用上面的方法敲了一下↓的題&#xff0c;但是不對啊&#xff0c;我也不知道為什么呀。

Spring-博客系統項目

一,實現效果 登錄: 注冊: 博客列表 個人博客中心 博客詳情: 更新博客 編寫博客 二,數據庫的建立和連接 首先,需要建庫,需要兩個實體,一個是用戶,一個是博客,需要如下屬性,需要注意的是需要將密碼的變長字符創設置的長一些,因為之后會對用戶的密碼進行加密,該博客中密碼…

依賴注入詳解與案例(前端篇)

依賴注入詳解與案例&#xff08;前端篇&#xff09; 一、依賴注入核心概念與前端價值 依賴注入&#xff08;Dependency Injection, DI&#xff09; 是一種通過外部容器管理組件/類間依賴關系的設計模式&#xff0c;其核心是控制反轉&#xff08;Inversion of Control, IoC&…

diy裝機成功錄

三天前&#xff0c;我正式開啟了這次裝機之旅&#xff0c;購入了一顆性能強勁的 i5-12400 CPU&#xff0c;一塊繪圖能力出色的 3060ti 顯卡&#xff0c;還有技嘉主板、高效散熱器、16G 內存條、2T 固態硬盤&#xff0c;以及氣派的機箱和風扇&#xff0c;滿心期待能親手打造一臺…

計算機三大主流操作系統的前世今生 - Linux|macOS|Windows

全文目錄 1 引言2 起源之路2.1 Linux 起源2.2 macOS 起源2.3 Windows 起源 3 綜合解析3.1 Linux系統綜合解析3.1.1 系統定義與核心架構3.1.2 發展歷程3.1.3 核心特點3.1.4 主流發行版3.1.5 應用場景 3.2 macOS系統綜合解析3.2.1 系統定義與核心架構3.2.2 發展歷程3.2.3 核心特點…

【AI智能推薦系統】第七篇:跨領域推薦系統的技術突破與應用場景

第七篇:跨領域推薦系統的技術突破與應用場景 提示語:?? “打破數據孤島,實現1+1>2的推薦效果!深度解析美團、亞馬遜如何用跨領域推薦技術實現業務協同,知識遷移核心技術全公開!” 目錄 跨領域推薦的商業價值跨領域推薦技術體系 2.1 基于共享表征的學習2.2 遷移學習…

R 語言科研繪圖 --- 桑基圖-匯總

在發表科研論文的過程中&#xff0c;科研繪圖是必不可少的&#xff0c;一張好看的圖形會是文章很大的加分項。 為了便于使用&#xff0c;本系列文章介紹的所有繪圖都已收錄到了 sciRplot 項目中&#xff0c;獲取方式&#xff1a; R 語言科研繪圖模板 --- sciRplothttps://mp.…

LintCode第485題-生成給定大小的數組,第220題-冰雹猜想,第235題-分解質因數

第485題 描述 給你一個大小size,生成一個元素從1 到 size的數組 樣例 1:輸入: size 4輸出: [1, 2, 3, 4]樣例解釋: 返回一個順序填充1到4的數組。樣例 2:輸入: size 1輸出: [1]樣例解釋: 返回一個順序填充1到1的數組 代碼如下: public class Solution { /** * param s…

Pandas:數據處理與分析

目錄 一、Pandas 簡介 二、Pandas 的安裝與導入 三、Pandas 的核心數據結構 &#xff08;一&#xff09;Series &#xff08;二&#xff09;DataFrame 四、Pandas 數據讀取與寫入 &#xff08;一&#xff09;讀取數據 &#xff08;二&#xff09;寫入數據 五、數據清洗…

Linux云計算訓練營筆記day05(Rocky Linux中的命令:管道操作 |、wc、find、vim)

管道操作 | 作用: 將前面命令的輸出&#xff0c;傳遞給后面命令&#xff0c;作為后面命令的參數 head -3 /etc/passwd | tail -1 取第三行 head -8 /etc/passwd | tail -3 | cat -n 取6 7 8行 ifconfig | head -2 | tail -1 只查看IP地址 ifconfig | grep 192 過濾192的ip…

動態規劃:最長遞增子序列

給定一個數組&#xff0c;求最長遞增子序列的長度,就是要求我們求出一個序列中最長的上升子序列的長度&#xff0c;最長上升子序列的定義就是從原序列中按照孫旭去除一些數字&#xff0c;這些數字是逐漸增大的。 *定義dp[i]表示以第i個元素結尾的最長上升子序列的長度。 *初始…

湖北理元理律師事務所:債務優化如何實現還款與生活的平衡?

債務壓力往往讓債務人陷入“還款還是生存”的兩難選擇。湖北理元理律師事務所通過案例實踐發現&#xff0c;科學規劃的核心在于平衡法律義務與基本生活保障&#xff0c;而非單純追求債務縮減。本文結合實務經驗&#xff0c;解析債務優化的可行路徑。 剛性需求優先&#xff1a;…

重力場模型、球諧函數以及重力異常

地球重力場有兩種表達方法&#xff1a; 1、拉普拉斯&#xff08;Laplace&#xff09;方法&#xff0c;將重力場展開為球諧級數。 2、斯托克斯&#xff08;Stokes&#xff09;方法&#xff0c;根據地球的總質量和旋轉角速度計算。 本篇主要說第一種方法&#xff0c;該方法將地…

MySQL的視圖

一、MySQL視圖的介紹和作用 MySQL視圖&#xff0c;加油兄弟們&#xff0c;孰能生巧&#xff0c;完整代碼在最后&#xff01;&#xff01;&#xff01; 視圖是一個虛擬的表&#xff0c;并不是真是存在的&#xff0c;視圖其實并沒有真實的數據&#xff0c;他只是根據一個sql語句…

Scala與Go的異同教程

當瑞士軍刀遇到電鋸&#xff1a;Scala vs Go的相愛相殺之旅 各位準備禿頭的程序猿們&#xff08;放心&#xff0c;用Go和Scala不會加重你的發際線問題&#xff09;&#xff0c;今天我們來聊聊編程界的"冰與火之歌"——Scala和Go的異同。準備好瓜子飲料&#xff0c;我…

SaaS場快訂平臺項目說明【持續更新】

一、項目介紹 SaaS場快訂平臺是一個高效、便捷的體育場館在線預訂平臺。本項目采用SaaS方式開發&#xff0c;用戶不需要安裝軟件&#xff0c;直接通過互聯網訪問在線程序即可使用。本項目主要構建了一個體育館預訂系統&#xff0c;項目的功能主要包括&#xff1a;用戶注冊與登…