kaggle--House Prices

本文介绍了在kaggle上的房价预测比赛,详细讲解了数据预处理步骤,包括缺失值处理、重复值处理和特征工程,并提到了特征处理中的数值特征和类别特征的处理方式。在模型构建阶段,使用了多种模型如岭回归、随机森林以及stacking,通过比较得出最佳模型。
摘要由CSDN通过智能技术生成

房价预测是kaggle网站上一个较初级的入门竞赛,涉及的变量共79组,包括数值特征组和类别特征。数据可在kaggle官网下载 。

一 导入数据

下载的数据集共包括train和test两部分,其中train部分用来训练数据集,test部分用来计算提交结果。
导入数据集

import pandas as pd
train=pd.read_csv(r'C:\Users\Administrator\Downloads\train.csv')
test=pd.read_csv(r'C:\Users\Administrator\Downloads\test.csv')

二 数据预处理

这部分主要包括缺失值处理,重复值处理,和特征处理等。
1 缺失值处理
首先总体查看缺失列,可以看到缺失列一共有34列,我们需要对其进行缺失值补充。

cols=[col for col in alldata.columns if alldata[col].isnull().any()]
len(cols)

输出:34
在进行缺失值补充之前,先去掉缺失值超过1/4的列。找出缺失值过多的列。

cols_to_use=[col for col in cols if (alldata[col].isnull().sum()/len(alldata))<0.25]
cols_drop=[col for col in cols if col not in cols_to_use]
print(cols_drop)

输出缺失列: [‘Alley’, ‘FireplaceQu’, ‘PoolQC’, ‘Fence’, ‘MiscFeature’]
去掉缺失列。

alldata=alldata.drop(cols_drop,axis=1)

在进行缺失值补充之前,先将特征进行分类。将数值特征采用中位数进行补充,类别特征采用众数进行补充。

#找出数值特征和类别特征
numerical_cols_missing=[col for col in cols_to_use if alldata[col].dtype!='object']
object_cols_missing=[col for col in cols_to_use if alldata[col].dtype=='object']
#进行缺失值处理
for col in object_cols_missing:
alldata[col]=alldata[col].fillna(alldata[col].dropna().mode()[0])   #填充去掉NAN值的众数
for col in numerical_cols_missing:
alldata[col]=alldata[col].fillna(
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值