分析背景

要求购房者描述他们梦想中的房子,他们可能不会从地下室天花板的高度或靠近东西方铁路开始。但是这个游乐场比赛的数据集证明了价格谈判比卧室或白色栅栏的数量更多。

有79个解释变量描述(几乎)爱荷华州埃姆斯的住宅的各个方面,这次竞赛挑战你预测每个家庭的最终价格。

先给出本次参赛的地址House Prices: Advanced Regression Techniques

一、提出问题

本文将通过构建一个机器学习模型通过住宅各个方面的信息来预测房价。

二、理解数据


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_kaggle房价预测特征意思


2.1先整体查看下数据


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_数据_02


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_数据集_03


偏度能够反应分布的对称情况,右偏(也叫正偏),在图像上表现为数据右边脱了一个长长的尾巴,这时大多数值分布在左侧,有一小部分值分布在右侧。

峰度反应的是图像的尖锐程度:峰度越大,表现在图像上面是中心点越尖锐。在相同方差的情况下,中间一大部分的值方差都很小,为了达到和正太分布方差相同的目的,必须有一些值离中心点越远,所以这就是所说的“厚尾”,反应的是异常点增多这一现象。

2.2 查看热图,相关性大于50%


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_建模_04


越是白色越是关联紧密。可以观察SalePrice跟哪些属性关联更紧密。

具体显示相关性对应的列。


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_建模_05


三、数据处理

3.1缺失值处理

先查看缺失状态:


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_kaggle房价预测特征意思_06


第一轮可以先进行进行“暴力”填充。

对于连续性数据进行均值|中位数填充

对于离散型数据将NaN这种空类型变成'None'或者是'NA'的字段

train1=train1.fillna(train1.mean())

train1=train1.fillna('None')

目前的训练集噪声很大,留给后面的EDA(Exploria Data Analysis)过程

3.2转非数

对非数字的属性进行转换。这里我使用最简单粗暴的get_dummies()来对train数据和test数据进行转换。这里也有个地方要注意:test数据里面属性的取值范围可能跟train数据里面属性的取值范围部分不同。这样如果直接对test数据和train数据做get_dummies,很可能会导致test和train数据转化后出现了不同的列。所以需要综合处理

首先训练集制作


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_建模_07


四、建模&&预测


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_kaggle房价预测特征意思_08


以上是先用xgboost算法,用训练集数据集大概做个测试,没有进行test数据集的建模预测。

第一轮就做到这里。

第二轮使用stacking集成算法(regressors=(ridge,lasso,elasticnet,xgboost),meta_regressor=xgboost)。

对数据属性,缺失属性相关性进行分析,观察特征与目标值之间的关系,对缺失数据进行合理填充。

线性回归采用ridge,lasso,elasticnet算法,采用RobustScaler()做标准化处理,带有CV的回归模型。

xgboost通过网格搜索交叉验证,得到最优的参数,包括迭代次数n_estimators、学习率learning_rate、最大树深max_depth、最小子树权重min_child_weight、subsample以及colsample_bytree等进行调优。

稍后进行整理补充。。。

#观察数据密度分布


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_kaggle房价预测特征意思_09


第二轮数据填充:

看数据缺失情况


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_数据_10


SaleType填充:


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_数据集_11


Gar列群填充:


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_数据_12


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_数据_13


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_数据_14


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_建模_15


LotFrontage填充


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_数据_16


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_建模_17


EDA后半段可以i'yek考虑删除'FireplaceQu', 'Fence', 'Alley', 'MiscFeature', 'PoolQC'字段。

第二轮制作训练集


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_kaggle房价预测特征意思_18


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_数据_19


按照8:2拆分训练集和测试集


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_建模_20


第二轮建模&&预测


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_kaggle房价预测特征意思_21


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_数据集_22


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_数据集_23


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_数据集_24


房价预测系统包括导入数据分析数据构建模型训练模型并进行预测等环节下载 房屋价格预测模型_数据_25