R语言线性回归和时间序列分析北京房价影响因素可视化案例

本文使用R语言分析北京房价的影响因素,通过数据清理、特征转换,利用线性回归模型预测房价。文章探讨了数值特征与房价的相关性,包括社区平均价、房间数量等,并对分类特征进行了探索,如建筑类型和是否满五年。通过地图展示了地理位置与房价的关系。最终,模型在2010年至2017年的数据上表现良好,预测了房价的上升趋势。
摘要由CSDN通过智能技术生成

原文链接:http://tecdat.cn/?p=21467 

目的

房价有关的数据可能反映了中国近年来的变化:

  • 人们得到更多的资源(薪水),期望有更好的房子

  • 人口众多

  • 独生子女政策:如何影响房子的几何结构?更多的卧室,更多的空间

我核心的想法是预测房价。然而,我不打算使用任何arima模型;相反,我将使用数据的特性逐年拟合回归。

结构如下:

  • 数据准备:将数值特征转换为分类;缺失值

  • EDA:对于数值特征和分类特征:平均价格与这些特征的表现

  • 建模:

    • 分割训练/测试给定年份的数据:例如,在2000年分割数据;根据这些数据训练回归模型

    • 然后,在2016年之前的所有新年里,预测每套房子的价值。

    • 用于验证的度量将是房屋的平均价格(即每年从测试样本中获得平均价格和预测值)

数据准备

我们对特征有了非常完整的描述:

  • url:获取数据(字符)的url

  • id:id(字符)

  • Lng:和Lat坐标,使用BD09协议。(数字)

  • Cid:社区id(数字)

  • 交易时间:交易时间(字符)

  • DOM:市场活跃日。(数字)

  • 关注者:交易后的人数。(数字)

  • 总价:(数值)

  • 价格:按平方计算的平均价格(数值)

  • 面积:房屋的平方(数字)

  • 起居室数(字符)

  • 客厅数(字符)

  • 厨房:厨房数量(数字)

  • 浴室数量(字符)

  • 房子高度

  • 建筑类型:包括塔楼(1)、平房(2)、板塔组合(3)、板(4)(数值)

  • 施工时间

  • 装修:包括其他(1)、粗(2)、简单(3)、精装(4)(数值)

  • 建筑结构:包括未清(1)、混合(2)、砖和木(3)、砖混凝土(4)、钢(5)和钢-混凝土复合材料(6)(数值)

  • 梯梯比:同层居民数与电梯数量的比例。

  • 电梯有(1)或没有电梯(0)(数值)

  • 五年期:业主拥有不到5年的财产(数字)

数据清理、特征创建

从最初的数据看:

  • 从网址上,我发现它有位置信息,如chengjiao/101084782030。同样,一个简单的regexp进行省特征提取。

  • 另一个大的数据准备工作是转换一些数字特征,比如地铁,地铁站附近的房子编码为1,相反的情况编码为0。

  • 还有很大一部分DOM缺失。我既不能在建模中使用这个特性,也不能删除NA,但它也会减小数据帧的大小。

#从网址中提取省份
  sapply(df$url, function(x) strsplit(x,'/')[[1]][4])

检查缺失

#缺失数据图
 
  ggplot(data = .,aes(x = V2, y = V1)) + geom_tile(aes(fill = value )) +

 dcfb94f83aa77e69affabd963b52e3d1.png

  • 如上所述,DOM的很大一部分丢失了。我决定先保留这个特性&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值