赞
踩
使用jupter book载入训练数据
import numpy as np
import pandas as pd
import re
import matplotlib.pyplot as plt
from pylab import mpl
mpl.rcParams['font.sans-serif'] = ['FangSong'] # 指定默认字体
data=pd.read_excel(r'C:\Users\Administrator\Desktop\house\train.xlsx')
data.head()
数据有62个特征值,观察后发现数据中有不少缺失值,并且存在很多信息冗余的特征,有必要对其逐一分析:
首先id列以及板块列作为标识列可以作直接删除处理
这些列表示都是人口特征,其中存在信息冗余,人数和比重保留其一即可,这里我选择保留比重数据
这些列表示的是房屋所在区域的配套设施数量分布,其中优势配套分布列并没有提供额外的信息,对于建模来说意义不大,可以做删除处理。
接下来的这几列表示的是房屋的交通便利情况,这里住户数量和路口数量特征绝大多数为0,判断为缺失值,做删除处理。 自驾和自驾实际值表示含义未可知,两者之间差距比较大,应该是量级不一致导致的。这里我们只保留一个自驾实际值。公共交通我们也只保留一个实际值;
这几列表示一些民生部门的数量分布,其中优势分布属于信息冗余,我们将其删除
最高房价列和房价中位数列由于缺失值太多只能做删除处理
这几列表示房屋附近产业分布,占比和数量我们保留其一即可,这里选择保留数量。优势产业为信息冗余直接删除
这几列房屋所在区域氛围,优势氛围列信息冗余,做删除处理
后面这几列同样缺失比例过大,做删除处理
这几列,与前面的氛围列数据重合了,作删除处理
columns=['人口占比', '14岁及以下比重', '15至64岁比重', '65岁及以上比重','成人高等学校',
'医院数量', '中学', '普通高等院校', '幼儿园', '景观数量', '小学','自驾实际值','公共交通实际值'
, '生产生活服务部门数量','科学素质提高部门数量', '党政机关数量', '流通数量', '第一产业数量','第二产业数量','第三产业数量','住宅氛围', '办公氛围', '商业氛围', '工厂氛围',
'DistanceKM', '房价']
data_.loc[:,columns]new=data
删除多余的列之后,现在只有26列,分析难度大大降低
对于人口特征’人口占比’, ‘14岁及以下比重’, ‘15至64岁比重’, '65岁及以上比重’这几列来说,数值为0的应该表示的是缺失值,这里我们使用均值来代替
自驾实际值和
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。