大年初四了,哈哈,年快過完了,這套DC學院的《資料分析》課程也快要KO了( ̄︶ ̄)↗
Id
MSSubClass
MSZoning
LotFrontage
LotArea
Street
Alley
LotShape
LandContour
Utilities
...
PoolArea
PoolQC
Fence
MiscFeature
MiscVal
MoSold
YrSold
SaleType
SaleCondition
SalePrice
1
60
RL
65.0
8450
Pave
NaN
Reg
Lvl
AllPub
2
2008
WD
Normal
208500
20
80.0
9600
5
2007
181500
3
68.0
11250
IR1
9
223500
4
70
9550
2006
Abnorml
140000
84.0
14260
12
250000
5 rows × 81 columns
注意:
這裡使用%matpoltlib notebook将繪制的圖檔内嵌在互動視窗,并且可以友善進一步操作和儲存(新繪制另一張圖形的時候需要首先點選關閉上一張圖形)
屬性的詳細說明在檔案中了,這裡省略。
房屋價格對應的屬性是’SalePrice’
可以從圖中看到,SalePrice的分布圖大緻服從右偏态分布,平均數大于中位數
大部分房屋價格在100000到300000之間
有少量的房屋價格大于500000
居住面積對應的屬性是’GrLivArea’
大部分房屋的居住面積在800到2000之間
有少量的房屋居住面積大于4000
地下室面積對應的屬性是’TotalBsmtSF’
有一部分的房屋地下室面積為0,也就是沒有地下室
可以使用seaborn的regplot方法,探索探索兩個連續型變量之間的相關性。
從代碼生成的圖中可以看到,GrLivArea和SalePrice呈現明顯的正相關關系
從代碼生成的圖中可以看到,TotalBsmtSF和SalePrice呈現明顯的正相關關系
可以使用seaborn的boxplot方法,探索離散型變量和連續型變量之間的相關性。
使用regplot繪制OverallQual和SalePrice之間的關系,比較跟boxplot的差別
從housing_df資料框中挑選出SalePrice,GrLivArea,TotalBsmtSF,GarageArea,YearBuilt,OverallQual等屬性,計算這些屬性之間的相關系數矩陣,并使用seaborn的heatmap方法繪制相關系數矩陣熱力圖,可以快速并且直覺地探索出與SalePrice相關的屬性。
從代碼生成的熱力圖可以看出,SalePrice跟OverallQual的相關性最高,相關系數為0.79,SalePrice跟YearBuilt的相關性最低,相關系數為0.52
首先使用探索型資料分析方法,探索出跟預測目标相關的特征
對相關的特征進行資料處理使其更加符合資料模組化的要求
特征挑選應該同時注重模型的準确率和可解釋性
可以看到,随機森林還是效果好一些的。
可以根據資料集原來的特征,建立新的對于預測目标有幫助的新特征,用于得到更好的效果。
比如建立“有沒有地下室”這個新的屬性(因為之前在探索性資料分析看到地下室面積為零也占很大比例,且房價也有很大的波動)
根據特征’TotalBsmtSF’建立一個新特征’HasBsmt’,也就是房屋是否有地下室。當’TotalBsmtSF’為0時’HasBsmt’為0,當’TotalBsmtSF’大于0時’HasBsmt’為1
根據特征’GrLivArea’建立一個新特征’LogArea’,也就是取特征’GrLivArea’的對數,縮小特征’GrLivArea’之間的差異
可以看到新特征對預測的效果有一定的幫助,其效果跟不同模型的内在機制存在一定的關系