R语言探索与分析-美国房价及其影响因素分析

一、选题背景

以多元线性回归统计模型为基础,用R语言对美国部分地区房价数据进行建模预测,进而探究提高多元回 归线性模型精度的方法。先对数据进行探索性预处理,随后设置虚拟变量并建模得出预测结果,再使用方差膨胀因子对 多重共线性进行修正,从而提高模型精度与稳健性,使回归结果在很大程度上得到优化。...

近年来,随着经济的不断增长,飞速增长的房价仍然是民众心中最看重的问题之一。房地产行业是我国经济健康发展的稳定器,也是加快我国经济增长的助力器,不仅对经济社会起着重要的支撑作用,还对社会的稳定产生着难以衡量的影响。

二、文献综述

...

三、方案论证(设计理念)

多元线性回归具有非常广泛的应用范围,但在实 际预测中对存在类别变量设置不充分或多重共线性 问题,导致统计模型缺乏精度和稳健性。由此,本文对如何精准且高效的排除多重共线性影响,并合理地 将分类变量转化为虚拟变量,提升多元线性回归模型 精度作了进一步探索,并将其应用于房价预测上。

四、实证分析

在美国房屋信息数据集中,包含不同地区的平均房价及多个可能影响房价的自变量:AvgAreaIncome(该地区的平均收入) AvgAreaHouseAge (房子的平均面积)AreaPopulation(该地区的人口数量)等。首先进行数据展示

随后读取数据并且进行描述性统计

library(openxlsx)
# 文件名+sheet的序号
dataset<- read.xlsx("house.xlsx", sheet = 1)
#View(dataset)
datasetsummary(dataset)#####描述性统计分析

具体描述性统计如上,包括各个变量的最大值、最小值、中位数、1/4分位数和3/4分位数等

接下来画出价格、该地区的平均收入的柱状图查看情况:

 

###画出price柱状图
price<-dataset$Price
pricehead(price,n=100)
barplot(head(price,n=100),xlab="house",ylab="prcie",col="blue",main="房价柱状图(前100个)",border="red")####画出该地区的平均收入柱状图
income<-dataset$AvgAreaIncome
incomehead(income,n=100)
barplot(head(income,n=100),xlab="",ylab="收入",col="pink",main="该地区的平均收入柱状图(前100个)",border="green")

 

画出特征变量的箱线图,看其分布形状,如图所示: 

由图可得,6个特征变量均分布较好且,存在异常值但是异常值很少。

接下来运用热力图展示出特征变量与响应变量的关系图:

从相关系数热力图可以看出,几乎每个特征变量对房价的相关系数都较高,但是其中该地区的平均收入与房价的相关系数是最高的,为0.64。

再用ggpairs函数展示出变量间的相关性,以及从下图中的相关系数中也可得出其相关性。

 接下来用房价对最初的特征变量进行回归,结果如下:

 图为软件R计算的结果。R²反应了全部6个x与y之间的线性相关水平。其中调整后的拟合优度为0.9179,接近于1,表明该模型对数据的拟合程度比较好,并且可以说明Price的91.79%可由这些因素来解释。P值<0.01,说明p的值非常的小,表明有99%的把握认为至少有一个解释变量是属于这个回归方程的,但这只能说明模型总体是显著的,且*号越多影响越显著。

运用向后逐步回归,每次计算AIC值不断剔除一个变量,利用其余变量进行回归,最终方程为:

接下来进行模型检验

表 1 异方差检验结果

Stufentsized Breusch-Pagan test

Data: fit1

BP= 10.385,  df=4 , p_value=0.03441

 由于p值小于0.05,拒绝原假设,可认为该模型不存在异方差性。

接下来,画出回归值与残差的残差图

五、结论

本次实验完整的研究了多元线性回归模型,首先简单的介绍了多元线性回归模型及其相关的基本理论,然后运用 R 语言实现多元回归模型的拟合,学习了如何求变量间的相关系数矩阵和画散点图矩阵,然后运用 lm 函数拟合回归模型,并运用赤池信息准则选择最优模型,最终对拟合的最优模型进行预测。

代码加数据

代码加数据加报告

创作不易,希望大家多多点赞收藏和评论!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/20845.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用Landsat的NDVI和NDWI阈值法土地分类

目录 分类效果源代码分类效果 创建一个包含多个层的影像合成:水体(NDWI > 0.5),植被(NDVI > 0.2),阴影区域的裸地(bare2但不包括bare1),和其他裸地(bare1)。然后,使用mosaic()方法合并这些层,并用clip(hh)方法裁剪到研究区域的范围。 源代码 var hh = ee.…

openmv是什么?它有什么功能和特性?它值不值得我们去学习?我们该如何去学习呢?

1.openmv是什么&#xff1f; OpenMV是一个基于MicroPython的嵌入式计算机视觉平台&#xff0c;旨在简化计算机视觉应用的开发过程。它配备了一款专门设计的ARM Cortex-M7处理器&#xff0c;集成了图像传感器、图像处理模块、MicroSD卡插槽等多种功能。用户可以通过Python脚本快…

基于Java的零食管理系统的设计与实现(论文+源码)_kaic

摘 要 随着科技的进步&#xff0c;以及网络的普及&#xff0c;都为人们的生活提供了极大的方便。因此&#xff0c;在管理”三姆”宿舍在线零食商店时&#xff0c;与现代的网络联系起来是非常必要的&#xff0c;本次设计的系统在研发过程中应用到了Java技术&#xff0c;这在一定…

第一人称射击游戏:反恐精英(CS1.6) 支持win版和mac版下载

枪战老玩家还记得这款史诗巨作吗&#xff1f;Macz为广大游戏玩家倾情推出反恐精英(CS1.6) for Mac&#xff0c;CS1.6官方下载是由著名游戏《半条命》的其中一个游戏模组(MOD)衍生而成的游戏。逼真的画面&#xff0c;震撼的音效&#xff0c;3D的视角&#xff0c;多样的操作融合而…

LeetCode - 贪心(Greedy)算法集合(Python)[分配问题|区间问题]

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/139242199 贪心算法&#xff0c;是在每一步选择中&#xff0c;都采取当前状态下&#xff0c;最好或最优&#xff08;即最有利&#xff09;的选择&…

光猫、路由器的路由模式、桥接模式、拨号上网

下面提到的路由器都是家用路由器 一、联网条件 1.每台电脑、路由器、光猫想要上网&#xff0c;都必须有ip地址。 2.电脑获取ip 可以设置静态ip 或 向DHCP服务器(集成在路由器上) 请求ip 电话线上网时期&#xff0c;猫只负责模拟信号和数字信号的转换&#xff0c;电脑需要使…

Spark介绍及RDD操作

Spark介绍及RDD操作 PySpark简介spark特点运行原理spark实例化 SparkCore-RDDRDD创建转换&#xff08;Transformation&#xff09;行动&#xff08;Action&#xff09; PySpark简介 spark特点 运行速度快&#xff1a;DAG内存运算容易使用&#xff1a;Java、Scala、Python、R通…

深入探究 threejs 中的材质与纹理应用

深入探究 threejs 中的材质与纹理应用 一、引言 在三维图形开发领域&#xff0c;Three.js 是一个强大而受欢迎的库。其中&#xff0c;材质与纹理的应用对于创建逼真和吸引人的三维场景起着至关重要的作用。通过对材质和纹理的巧妙运用&#xff0c;可以极大地增强模型的视觉效…

数据结构学习笔记(6)--特殊矩阵的压缩存储

1.数组的存储结构 &#xff08;1&#xff09;一维数组的存储结构 起始地址&#xff1a;LOC 各数组元素大小相同&#xff0c;且物理上连续存放。 数组元素a[i]的存放地址LOCi*sizeof(ElemType) (0<i<10) 注&#xff1a;除非题目特别说明&#xff0c;否则数组下标默…

AutoCAD 2024 for Mac(cad设计绘图工具) v2024.3中文激活版

AutoCAD是一款强大的CAD软件&#xff0c;适合于各种领域的设计和绘图。它具有二维图形和三维建模功能、多种文件格式支持、自定义命令和样式、批处理和脚本等特点&#xff0c;可以帮助用户实现高质量的设计和建模。同时&#xff0c;AutoCAD还支持云端存储和共享&#xff0c;方便…

【webrtc】RtpToNtpEstimator:将 RTP 时间戳映射到 NTP 时间

m98 RtpToNtpEstimator 这个函数的实现反映了实时通信中对于时间同步精确度的高要求,以及处理网络通信中常见的问题(如延迟变化、时间回绕)的复杂性。 RtpToNtpEstimator::UpdateMeasurements 是 WebRTC 中一个用于将 RTP 时间戳映射到 NTP 时间的函数。这个函数的核心功能是…

MySQL之数据库相关操作学习笔记(一)

数据库相关操作 数据库表创建 定义逻辑库、数据表 DML 添加修改删除查询 DCL 用户权限事务 DDL 逻辑库数据表视图索引 DCL (Data Control Language) 示例 DCL&#xff08;数据控制语言&#xff09;主要用于控制数据库用户的访问权限和管理事务。DCL 主要包含两类语句&…

Spring源码之BeanDefinition的加载

Spring源码之BeanFactory和BeanDefinition BeanFactory和BeanDefinitionBeanFactoryBeanDefinition源码分析创建AnnotationConfigApplicationContext对象注册配置类refresh方法 BeanFactory和BeanDefinition BeanFactory BeanFactory是Spring提供给外部访问容器的根接口&…

Spring Boot整合Redis

Spring Boot整合Redis Spring Boot 整合 Redis 是一种常见的做法&#xff0c;用于在 Spring Boot 应用程序中添加缓存、会话管理分布式锁等功能。 浅谈Redis Redis用于存储数据&#xff0c;且在内存当中进行存储。 但是在日常编写代码时&#xff0c;定义一个变量也就是属于在内…

关于vlookup的第一个参数的个人理解

VLOOKUP&#xff08;查阅值&#xff0c;包含查阅值和返回值的查找区域&#xff0c;查找区域中返回值的列号&#xff0c;精确查找或近似查找&#xff09; 我个人理解&#xff0c;第一个参数应该叫线索值&#xff0c;因为我们要通过它去找与其对应的&#xff08;也就是与其同行的…

代码随想录-算法训练营day57【单调栈01:每日温度、下一个更大元素I】

代码随想录-035期-算法训练营【博客笔记汇总表】-CSDN博客 第十章 单调栈part01● 739. 每日温度 ● 496.下一个更大元素 I 详细布置 739. 每日温度 今天正式开始单调栈,这是单调栈一篇扫盲题目,也是经典题。大家可以读题,思考暴力的解法,然后在看单调栈的解法。 就能感…

7-zip安装教程

一、简介 7-Zip 是一款开源的文件压缩软件&#xff0c;由 Igor Pavlov 开发。它具有高压缩比、支持多种格式、跨平台等特点。使用 C语言编写&#xff0c;其代码在 Github 上开源。 7-Zip的官网&#xff1a; 7-Zip 7-zip官方中文网站&#xff1a; 7-Zip 官方中文网站 7-Zip 的 G…

Day 10:100322. 删除星号以后字典序最小的字符串

Leetcode 100322. 删除星号以后字典序最小的字符串 给你一个字符串 s 。它可能包含任意数量的 ‘’ 字符。你的任务是删除所有的 ’ 字符。 当字符串还存在至少一个 ‘*’ 字符时&#xff0c;你可以执行以下操作&#xff1a; 删除最左边的 ‘*’ 字符&#xff0c;同时删除该星号…

Java与Web前端:技术融合与未来展望

Java与Web前端&#xff1a;技术融合与未来展望 在当今数字化时代&#xff0c;Java和Web前端技术无疑是软件开发领域的两大重要支柱。它们各自拥有独特的优势和应用场景&#xff0c;但同时也在不断地相互融合&#xff0c;共同推动着技术的发展与创新。本文将从四个方面、五个方…

C语言 | Leetcode C语言题解之第115题不同的子序列

题目&#xff1a; 题解&#xff1a; int numDistinct(char* s, char* t) {int m strlen(s), n strlen(t);if (m < n) {return 0;}unsigned long long dp[m 1][n 1];memset(dp, 0, sizeof(dp));for (int i 0; i < m; i) {dp[i][n] 1;}for (int i m - 1; i > 0;…