本次又从kaggle上淘来了 King County 的房价数据,结合近期学习的Python分析工具,对影响房价的可能因素进行分析。

  • 提出问题

随着国家对房产市场的宏观调控越来越严格,此前一路高歌猛进的房产市场也随之开始转冷,那么除了政策因素,还有哪些因素会影响房价呢?

本次我们以King County 的房价数据为参考依据,对房价可能存在的影响因素进行分析:

房价与环境配套有哪些关系?

分别从海滨区域、设施等级、房屋评级等级 进行分析(评级标准为当地自己的评级系统所产生,本次分析将直接引用);

房价与房间配置有哪些关系?

分别从卧室数、洗浴室数、楼层 进行分析;

房价与得房率的关系?

得房率=使用面积/建筑面积

由于2015年有房主自行翻修,可能存在扩大使用面积情况,故此处使用面积 2015年使用面积

房价与房龄的关系?

房龄=2015-建成时间

数据为2015年上传,故按照2015为时间起始点计算;

房屋实看数

房屋实看数=房屋被实际查看的数量;

房屋查看的数量一定程度上可反映出用户对于房价的接受程度;

  • 理解数据

由于下载的数据格式为CSV格式,故直接本地数据upload至Jupyter notebook;

#读取CSV,均转为str格式数据,后期在进行其他格式数据转换
import pandas as pd
import numpy as np
priceDf=pd.read_csv('kc_house_data.csv',dtype='object')#打印头5行查看数据
priceDf.head()
  • 数据清洗

1)选择子集

#选择子集
subpriceDf=priceDf.loc[:,'id':'grade']

2)重命名列名

#将需要使用的列名重新命名
calNameDict={'date':'日期','price':'房价','bedrooms':'卧室数','bathrooms':'洗浴室数','sqft_living':'使用面积','sqft_lot':'建筑面积','floors':'楼层','waterfront':'海滨区','view':'实看数','grade':'房屋等级','yr_built':'建成年份','yr_renovated':'翻修年份','zipcode':'邮编','sqft_living15':'使用面积(2015)','condition':'条件设施','sqft_lot15':'建筑面积(2015)','id':'编号','sqft_above':'地上建筑面积','sqft_basement':'地下建筑面积','lat':'纬度','long':'经度'}
priceDf.rename(columns=calNameDict,inplace=True)

3)缺失值处理(仅删除)

#处理缺失值(本次仅做删除处理)
priceDf=priceDf.dropna(subset=['卧室数','洗浴室数','楼层','海滨区','条件设施','房屋等级','使用面积(2015)','建筑面积(2015)','建成年份','实看数'],how='any')

4)数据类型转化

#将数据中属于浮点型的数据进行转化
priceDf['洗浴室数']=priceDf['洗浴室数'].astype('float')
priceDf['lat']=priceDf['lat'].astype('float')
priceDf['long']=priceDf['long'].astype('float')
priceDf['使用面积(2015)']=priceDf['使用面积(2015)'].astype('float')
priceDf['建筑面积(2015)']=priceDf['建筑面积(2015)'].astype('float')#打印出结果,查看是否更改彻底
print(priceDf.dtypes)#将数据中日期的字符串形式转化
priceDf.loc[:,'日期']=pd.to_datetime(priceDf.loc[:,'日期'],format='%Y-%m-%d',errors='coerce')

  • 构建模型

1)房价与环境配套的相关性

此处仅对'房价','海滨区','条件设施','房屋等级'进行展示,并查看其相关性;

#去重
kpi1_Df=priceDf.drop_duplicates(subset=['房价','海滨区','条件设施','房屋等级'])#结果按'房价'倒叙排列
kpi1_Df=kpi1_Df.sort_values(by='房价',ascending=False)#重新命名编号列
kpi1_Df=kpi1_Df.reset_index(drop=True)#打印出结果的前十行数据
kpi1_Df.head(10)

2)房价与房间配置的相关性

方法与模型1)类似,此处不再赘述,详见代码;

#去重
kpi2_Df=priceDf.drop_duplicates(subset=['房价','卧室数','洗浴室数','楼层'])#结果按'房价'倒叙排列
kpi2_Df=kpi2_Df.sort_values(by='房价',ascending=False)#重新命名编号列
kpi2_Df=kpi2_Df.reset_index(drop=True)#打印出结果的前十行数据
kpi2_Df.head(10)

3)得房率

#统计建筑面积&使用面积之和(以2015年为基准)
totalAreaF1=priceDf.loc[:,'建筑面积(2015)'].sum()
totalAreaF2=priceDf.loc[:,'使用面积(2015)'].sum()
kpi3_Df=totalAreaF2/totalAreaF1
print('得房率=',kpi3_Df)

得房率= 0.15558283207827878;

4)房价与房龄的相关性

#按照建成年代进行分组,并查看对应房价的平均值
builtyrF=priceDf['房价'].groupby(priceDf['建成年份']).mean()#按金额倒叙排序,并限制展示前十房源
builtyrF=builtyrF.sort_values(ascending=False)
builtyrF.head(10)

5)房屋实看数

实际看房数一定程度上说明了用户的偏好情况;

#按照实看数进行分组,并查看对应房价的平均值
viewF=priceDf['房价'].groupby(priceDf['实看数']).mean()#按金额进行正序排序
viewF=viewF.sort_values(ascending=False)
viewF.head(10)

  • 小结

1)房价与环境配套的相关性

King County的高价房源都集中于海滨区域,且评分都较高,最高价高达7700000美金。

2)房价与房间配置的相关性

高价房源的建筑面积较高,其中价格前十的房源大部分拥有5-6个卧室或洗浴室,而楼层偏底层,大部分为2层建筑,猜测此部分房源可能为海滨区的别墅住宅;

房源价格与卧室数、洗浴室数以及建筑面积成正相关的关系。

3)得房率

整体得房率≈ 0.16,可用面积相对较低,体现该地区房源的占地面积较大,购买房源或可拥有大面积院落;

4)房价与房龄的相关性

房源价格前十的房龄,主要集中于两个区间:90年代初期与2015年(取数时间近期);

有历史的房源和新建成的房源,一定程度上可以卖的上好价钱。

5)房屋实看数

房源实看数最高为4次,此类房源的平均价格为1463711美金;

高房价房源的实看数均较高,看房行为并不能代表最终成交,具体成交数据还有待进一步挖掘。

利用Python进行King County房价数据分析相关推荐

  1. 数据分析 回归问题: 美国King County房价预测训练赛

    这是DC竞赛网的一道基础回归问题, 美国King County房价预测训练赛 竞赛详细信息:美国King County房价预测训练赛 任务:从给定的房屋基本信息以及房屋销售信息等,建立一个回归模型预测 ...

  2. 数据挖掘竞赛-美国King County房价预测训练赛

    美国King County房价预测训练赛 简介 DC上的一个回归题(正经的回归题). 比较简单. 时间原因(暂时没什么时间看国内旧赛),看了一下网上的解答,改善了一下神经网络就提交了. 过程 数据获取 ...

  3. 华为LAB实验室3-机器学习实验:(线性回归)美国King County房价预测训练赛

    各位好,我是乾颐堂大堂子.领取完整实战指南可以私信我,关键词:实战指南 导入相关python库 2.数据处理 下载的是两个数据文件,一个是真实数据,一个是测试数据,打开kc_train.csv,能够看 ...

  4. 利用Python的全国旅游景点数据分析案例(新手)

    目录 概述 数据获取 数据预处理和清洗 景点数据 数据分析 景点数据 酒店数据 机器学习 分析 代码实现 总结 概述 新手刚开始学python,自己写了这个例子熟悉一下pandas库和sklearn. ...

  5. python读取游戏数据_利用Python对游戏销量进行数据分析

    一.提出问题 1. 2005-2017年全球销量的top20的游戏是什么? 2. 2005-2017年各游戏生产商的销量对比,并使用堆叠柱状图进行可视化. 二.理解数据 数据大小:16599条 数据来 ...

  6. 利用python + pyecharts+Pandas对北上广深等城市进行租房数据分析

    本次分析的租房数据主要来源于上一篇博客中获取的"房天下"网站租房信息,对该数据分析主要使用了Pandas数据处理库. 利用python pyecharts进行租房情况数据分析 数据 ...

  7. 数据基础---《利用Python进行数据分析·第2版》第8章 数据规整:聚合、合并和重塑

    之前自己对于numpy和pandas是要用的时候东学一点西一点,直到看到<利用Python进行数据分析·第2版>,觉得只看这一篇就够了.非常感谢原博主的翻译和分享. 在许多应用中,数据可能 ...

  8. 利用Python进行数据分析(第2版)

    Wes McKinney 是流行的Python开源数据分析库pandas的创始人.他是一名活跃的演讲者,也是Python数据社区和Apache软件基金会的Python/C++开源开发者.目前他在纽约从 ...

  9. 干货 | 《利用Python进行数据分析》资料开源下载

    今天要跟大家分享的是数据分析领域的必备书籍之一的<利用Python进行数据分析>第二版.英文名为 Python for Data Analysis. 本书作者Wes McKinney 资深 ...

最新文章

  1. PCL中outofcore模块---基于核外八叉树的大规模点云的显示
  2. 【工业串口和网络软件通讯平台(SuperIO)教程】七.二次开发服务驱动
  3. 【原】DjianGo Windows7下的安装
  4. 用Java线程获取优异性能(II)——使用同步连载线程访问关键代码部份
  5. 1042:奇偶ASCII值判断
  6. CTR深度学习模型之 DeepFM 模型解读
  7. 牛客网--整数与IP地址间的转换
  8. java进度条_自学java你需要知道的,适合编程小白
  9. Oracle总结第一篇【基本SQL操作】
  10. 测视力距离5米还是3米_装B冷知识 | 小孔镜为什么可以提高视力?
  11. oracle 9 10 11 比较好,atitit.Oracle 九 10 11 12新特性attilax总结
  12. jcseg 1.7.2 版发布了
  13. 批量插入数据到sqlserver
  14. html5 牧场游戏,手机QQ首批五款HTML5游戏名单 农场偷菜复活
  15. Linux网络流量监控
  16. 推荐交互设计师阅读的一本书
  17. 编写一个函数,使其向主函数返回您输入的3个整数参数中的最大值,并在主函数中输出该值。
  18. 在java中如何做身份证号码校验
  19. Ankylosauridae OS
  20. 如何在graphpad表示出正负误差_正负公差表示方法

热门文章

  1. matlab那些鬼畜的事儿
  2. 使用大白菜PE给苹果电脑安装win7ghost
  3. 二分查找(折半查找)详解
  4. CSPS模拟 45 乔迁之喜
  5. 一入爬虫深似海,总结python爬虫学习笔记!
  6. 离散傅里叶变换代码实现
  7. 警惕手机病毒成偷跑流量“陷阱”
  8. Python中用米粒填充国际象棋
  9. 三种项目成本估算方法
  10. 血杀英雄为什么不显示服务器,不怕被禁吗?《血杀英雄》竟有这种东西