当前位置:网站首页 > R语言数据分析 > 正文

r语言统计人数_r语言做回归分析

数据是统计局下载的,为期末大作业做准备。
数据要存成csv模式,好导入到RGui中
在这里插入图片描述
年份,人口出生率,人口死亡率,人口自然增长率
2000,1.403,0.645,0.758
2001,1.338,0.643,0.695
2002,1.286,0.641,0.645
2003,1.241,0.64,0.601
2004,1.229,0.642,0.587
2005,1.24,0.651,0.589
2006,1.209,0.681,0.528
2007,1.21,0.693,0.517
2008,1.214,0.706,0.508
2009,1.195,0.708,0.487
2010,1.19,0.711,0.479
2011,1.193,0.714,0.479
2012,1.21,0.715,0.495
2013,1.208,0.716,0.492
2014,1.237,0.716,0.521
2015,1.207,0.711,0.496
2016,1.295,0.709,0.586
2017,1.243,0.711,0.532
2018,1.094,0.713,0.381
2019,1.048,0.714,0.334
(数据自行复制吧)

一、任务目的:

综合运用本学期所学统计学理论知识、R语言编程技巧和数据分析案例等内容,根据个人兴趣点,自行收集数据、整理数据、展示数据、分析数据,挖掘数据价值。能够正确合理使用R语言实现数据分析,并将此案例整理成数据分析报告。

二、任务要求:

1.数据描述性统计(平均数、标准差、中位数、偏态程度),体现数据特征,并对重要数据变量进行图表展示。
2.数据分析:明确通过数据分析要解决什么问题,运用什么分析思路、分析方法和模型,并最终得出总结性的结论或效果。
3.分析过程中,根据数据特征,解释为什么使用某某函数进行运算求解,并对运算得到的相关参数进行解读。
例如:参数估计时,数据总体服从正态分布σ未知,样本量<30,属小样本,样本均值经标准化后服从自己度为n-1的t分布,故采用t.test函数……
假设检验时,需写明具体“假设”、结论及相应代码。
建模时,需明确具体步骤,对建模参数进行解读

数据描述性统计

在这里插入图片描述在这里插入图片描述在这里插入图片描述

绘制带有箱线图、轴须线和密度估计的直方图

在这里插入图片描述

在这里插入图片描述在这里插入图片描述在这里插入图片描述

核密度图

在这里插入图片描述
人口出生率:
在这里插入图片描述
人口死亡率:
在这里插入图片描述
人口自然增长率:
在这里插入图片描述

时间序列图

在这里插入图片描述
在这里插入图片描述

数据分析

  1. 确定变量间的关系
    首先出生率和死亡率:
    在这里插入图片描述在这里插入图片描述
    人口出生率下降,人口死亡率在增长,二者的观测点分布在一条直线的周围,因而具有负线性关系。两个箱线图显示,出生率和死亡率不是对称分布。从拟合的曲线来看,有一定的线性特征,可以认为两个变量有线性关系。
    其次是出生率和自然增长率
    代码同上
    在这里插入图片描述
    人口出生率增加,人口自然增长率也在增长,二者的观测点分布在一条直线的周围,因而具有正的线性相关关系。两个箱线图显示,出生率和死亡率有一定的对称分布。从拟合的曲线来看,非线性特征不明显,显示两个变量有线性关系。
    最后是死亡率和自然增长率
    在这里插入图片描述
    人口死亡率减少,人口自然增长率在增长,二者的观测点分布在一条直线的周围,因而具有负的线性相关关系。两个箱线图显示,出生率和死亡率不是对称分布。从拟合的曲线来看,线性特征不是很明显,显示两个变量没有较强线性关系。
  2. 有关于相关系数的计算与检验
    在这里插入图片描述
  3. 回归模型与回归方程

在这里插入图片描述在这里插入图片描述

arrows(x0 = 1, y0 = 1, x1 = 4, y1 = 4) 

x0, y0,x1,y1 支持一次设置多个值,同时画多个箭头

arrows(x0 = c(1, 1), y0 = c(1, 2), x1 = c(4, 4), y1 = c(4, 5)) 

length : 该参数一次只能设置一个值,默认值为0.25, 为了调整不同箭头的大小,建议分别设置

par(mfrow = c(1,3)) plot(1:5, 1:5, xlim = c(0,6), ylim = c (0,6), type = "n", main = "length = 0.1") arrows(x0 = 1, y0 = 1, x1 = 4, y1 = 4, length = 0.1) plot(1:5, 1:5, xlim = c(0,6), ylim = c (0,6), type = "n", main = "length = 0.5") arrows(x0 = 1, y0 = 1, x1 = 4, y1 = 4, length = 0.5) plot(1:5, 1:5, xlim = c(0,6), ylim = c (0,6), type = "n", main = "length = 1") arrows(x0 = 1, y0 = 1, x1 = 4, y1 = 4, length = 1) 

效果图
在这里插入图片描述code : 调整箭头的类型,一共有1,2,3,4 共四种类型,该参数一次只能设置一个值

par(mfrow = c(1,3)) plot(1:5, 1:5, xlim = c(0,6), ylim = c (0,6), type = "n", main = "code = 1") arrows(x0 = 1, y0 = 1, x1 = 4, y1 = 4, code = 1) plot(1:5, 1:5, xlim = c(0,6), ylim = c (0,6), type = "n", main = "code = 2") arrows(x0 = 1, y0 = 1, x1 = 4, y1 = 4, code = 2) plot(1:5, 1:5, xlim = c(0,6), ylim = c (0,6), type = "n", main = "code = 3") arrows(x0 = 1, y0 = 1, x1 = 4, y1 = 4, code = 3) 

效果图
在这里插入图片描述angle : 设置箭头的角度,默认值是45,该参数一次只能设置一个值

par(mfrow = c(1,3)) plot(1:5, 1:5, xlim = c(0,6), ylim = c (0,6), type = "n", main = "angle = 15") arrows(x0 = 1, y0 = 1, x1 = 4, y1 = 4, length = 0.5, angle = 15) plot(1:5, 1:5, xlim = c(0,6), ylim = c (0,6), type = "n", main = "angle = 45") arrows(x0 = 1, y0 = 1, x1 = 4, y1 = 4, length = 0.5, angle = 45) plot(1:5, 1:5, xlim = c(0,6), ylim = c (0,6), type = "n", main = "angle = 60") arrows(x0 = 1, y0 = 1, x1 = 4, y1 = 4, length = 0.5, angle = 60) 

效果图
在这里插入图片描述除了上面的针对arrows 的特殊参数之外,也支持一些通用的参数,col , lty ,lwd 等

出生率和自然增长率
在这里插入图片描述
死亡率和自然增长率
在这里插入图片描述

模型的拟合优度(以出生率和死亡率为例)

在这里插入图片描述
出生率和死亡率的决定系数R^2=0.3447=34.47%表示在人口出生率的取值的总误差中有34.47%可以由人口出生率与死亡率之间的线性关系来解释,可见模型的拟合程度较低

残差的标准误

出生率和死亡率的残差标准误是0.06245,表示用死亡率来预测出生率时平均的预测误差为6.245%

模型显著检验——线性关系检验(F检验)

回归系数检验与推断

出生率和死亡率
H0:β1=0(自变量对因变量的影响不显著);H1:β2≠0(显著)
t=-3.077 p=0.0065<0.05,拒绝原假设,自变量对因变量的影响显著

利用回归方程进行预测

#计算点预测值(pre_model)、置信区间(con_int)和预测区间(pre_int) model<-lm(人口出生率~人口死亡率,data=table) x0<-table$人口死亡率 pre_model<-predict(model) con_int<-predict(model,data.frame(人口死亡率=x0),interval="confidence",level=0.95) pre_int<-predict(model,data.frame(人口死亡率=x0),interval="prediction",level=0.95) pre<-data.frame(人口出生率=table$人口出生率,点预测值=pre_model,置信下限=con_int[,2],置信上限=con_int[,3],预测下限=pre_int[,2],预测上限=pre_int[,3]) pre 

在这里插入图片描述

回归模型诊断

#计算预测值(pre)、残差(res)和标准化残差(zre)(出生率,死亡率) model<-lm(人口出生率~人口死亡率,data=table) pre<-fitted(model) res<-residuals(model) zre<-model$residuals/(sqrt(deviance(model)/df.residual(model))) mysummary<-data.frame(人口出生率=table$人口出生率,点预测值=pre,残差=res,标准化残差=zre) mysummary 

在这里插入图片描述

检验线性关系

#成分残差图 model_1<-lm(人口出生率~人口死亡率,data=table) library(car) par(mai=c(.7,.7,.1,.1),cex=.8) crPlots(model_1)#线性 #检验正态性 par(mfrow=c(2,2),cex=0.8,cex.main=0.7) plot(model_1) #检验方差齐性 library(car) ncvTest(model_1) #绘制散布—水平图 spreadLevelPlot(model_1) #检验残差独立性 library(car) durbinWatsonTest(model_1) 

在这里插入图片描述
残差成分图,横坐标是自变量的实际观测值,纵坐标是因变量与残差之和,从拟合的曲线可以看出,人口出生率和死亡率没有过于明显的非线性模式,说明二者的线性关系假定成立。
在这里插入图片描述
右上角的图是标准化残差的正太Q-Q图,用于检验残差的正态性假定,可以看出,各个点大部分都在直线周围随机分布,没有固定模制,因此,出生率和死亡率的线性模型中,ε正态性的假定基本成立。
左上角的图是残差值与拟合值图
左下角的图是位置尺度图
右下角图是残差与杠杆图,用于鉴别样本数据是否有离群点、高杠杆点和强影响点 。
在这里插入图片描述

方差齐性检验的原假设为误差项满足方差齐性p=0.98995接受原假设,可以认为满足方差齐性。
在这里插入图片描述
该图非线性特征明显,所以不满足方差齐性的假定
在这里插入图片描述
原假设为残差无自相关 p=0,拒绝原假设,显示残差有自相关

到此这篇r语言统计人数_r语言做回归分析的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • r语言入门数据分析_R语言数据分析、挖掘建模与可视化2024-11-15 08:36:06
  • R语言数据分析案例2024-11-15 08:36:06
  • r语言数据分析案例_数据分析方法五种2024-11-15 08:36:06
  • r语言时间序列分析实验报告_r语言将日期转化为时间序列2024-11-15 08:36:06
  • r语言数据分析案例报告_数据分析语言2024-11-15 08:36:06
  • r语言教程数据分析_数据分析与R语言是什么2024-11-15 08:36:06
  • r语言数据分析网课_R语言与统计分析第八章答案2024-11-15 08:36:06
  • r语言做相关性分析画图_r语言描述性统计分析2024-11-15 08:36:06
  • 某高校的R语言数据分析期末作业2024-11-15 08:36:06
  • r语言pearson's相关性分析_p值怎么看显著性2024-11-15 08:36:06
  • 全屏图片