首页 > 其他分享 >拓端tecdat|R语言代码编写逐步多元回归模型分析长鼻鱼密度影响因素

拓端tecdat|R语言代码编写逐步多元回归模型分析长鼻鱼密度影响因素

时间:2022-11-29 15:33:28浏览次数:63  
标签:Longnose 0.00 Acerage tecdat 拓端 Maxdepth 模型 多元回归 NO3

R语言逐步多元回归模型分析长鼻鱼密度影响因素




 

 

目录

 

​​如何做多元回归​​

 

​​逐步回归选择模型​​

 

​​逐步程序​​

 

​​定义最终模型​​

 

​​ 方差分析​​

 

​​预测值图​​

 

​​检查模型的假设​​

 

​​模型拟合标准​​

 

​​将模型与似然比检验进行比较​​

 


 

我从​​马里兰州生物流调查中​​提取了一些数据,以进行多元回归分析。数据因变量是每75米长的水流中长鼻鱼(Rhinichthys cataractae)的数量。自变量是河流流失的面积(英亩);氧(毫克/升);水流段的最大深度(以厘米为单位);硝酸盐浓度(毫克/升);硫酸盐浓度(毫克/升);以及采样日期的水温(以摄氏度为单位)。

 

 

 

如何做多元回归

 

 

 

多重相关

 

数据集包含多个数字变量时,最好查看这些变量之间的相关性。原因之一是,可以轻松查看哪些自变量与该因变量相关。第二个原因是,如果要构建多元回归模型,则添加高度相关的自变量不太可能对模型有很大的改进。

 

 

 

最后,值得看一下数字变量的分布。如果分布差异很大,则使用Kendall或Spearman相关性可能更合适。同样,如果自变量与因变量的分布不同,则可能需要对自变量进行转换。

 

 

 

 

 

Data = read.table(textConnection(Input),header=TRUE)

library(dplyr)

Data.num =
select(Data,
Longnose,
Acerage,
DO2,
Maxdepth,
NO3,
SO4,
Temp)

library(FSA)

headtail(Data.num)


Longnose Acerage DO2 Maxdepth NO3 SO4 Temp

1 13 2528 9.6 80 2.28 16.75 15.3

2 12 3333 8.5 83 5.34 7.74 19.4

3 54 19611 8.3 96 0.99 10.92 19.5

66 20 4106 10.0 96 2.62 5.45 15.4

67 38 10274 9.3 90 5.45 24.76 15.0

68 19 510 6.7 82 5.25 14.19 26.5





library(psych)

corr.test(Data.num,
use = "pairwise",
method="pearson",
adjust="none", # Can adjust p-values; see ?p.adjust for options
alpha=.05)



Correlation matrix

Longnose Acerage DO2 Maxdepth NO3 SO4 Temp

Longnose 1.00 0.35 0.14 0.30 0.31 -0.02 0.14

Acerage 0.35 1.00 -0.02 0.26 -0.10 0.05 0.00

DO2 0.14 -0.02 1.00 -0.06 0.27 -0.07 -0.32

Maxdepth 0.30 0.26 -0.06 1.00 0.04 -0.05 0.00

NO3 0.31 -0.10 0.27 0.04 1.00 -0.09 0.00

SO4 -0.02 0.05 -0.07 -0.05 -0.09 1.00 0.08

Temp 0.14 0.00 -0.32 0.00 0.00 0.08 1.00

Sample Size



Probability values (Entries above the diagonal are adjusted for multiple tests.)

Longnose Acerage DO2 Maxdepth NO3 SO4 Temp

Longnose 0.00 0.00 0.27 0.01 0.01 0.89 0.26

Acerage 0.00 0.00 0.86 0.03 0.42 0.69 0.98

DO2 0.27 0.86 0.00 0.64 0.02 0.56 0.01

Maxdepth 0.01 0.03 0.64 0.00 0.77 0.69 0.97

NO3 0.01 0.42 0.02 0.77 0.00 0.48 0.99

SO4 0.89 0.69 0.56 0.69 0.48 0.00 0.52

Temp 0.26 0.98 0.01 0.97 0.99 0.52 0.00

拓端tecdat|R语言代码编写逐步多元回归模型分析长鼻鱼密度影响因素_似然比

 

 

 

拓端tecdat|R语言代码编写逐步多元回归模型分析长鼻鱼密度影响因素_似然比_02

拓端tecdat|R语言代码编写逐步多元回归模型分析长鼻鱼密度影响因素_5e_03

 

拓端tecdat|R语言代码编写逐步多元回归模型分析长鼻鱼密度影响因素_似然比_04

拓端tecdat|R语言代码编写逐步多元回归模型分析长鼻鱼密度影响因素_数据_05

 

 

 

 

 

逐步回归选择模型

 

使用AIC(赤池信息标准)作为选择标准。可以使用选项k = log(n)代替BIC。 

 

 

 

逐步程序

 

Longnose ~ 1



Df Sum of Sq RSS AIC

+ Acerage 1 17989.6 131841 518.75

+ NO3 1 14327.5 135503 520.61

+ Maxdepth 1 13936.1 135894 520.81

<none> 149831 525.45

+ Temp 1 2931.0 146899 526.10

+ DO2 1 2777.7 147053 526.17

+ SO4 1 45.3 149785 527.43

.

.

< snip... more steps >

.

.

Longnose ~ Acerage + NO3 + Maxdepth



Df Sum of Sq RSS AIC

<none> 107904 509.13

+ Temp 1 2948.0 104956 509.24

+ DO2 1 669.6 107234 510.70

- Maxdepth 1 6058.4 113962 510.84

+ SO4 1 5.9 107898 511.12

- Acerage 1 14652.0 122556 515.78

- NO3 1 16489.3 124393 516.80



Call:

lm(formula = Longnose ~ Acerage + NO3 + Maxdepth, data = Data)



Coefficients:

(Intercept) Acerage NO3 Maxdepth

-23.829067 0.001988 8.673044 0.336605

拓端tecdat|R语言代码编写逐步多元回归模型分析长鼻鱼密度影响因素_似然比_06

 

 

 

 

 

定义最终模型

 

 

 

summary(model.final)      # Show coefficients, R-squared, and overall p-value



Estimate Std. Error t value Pr(>|t|)

(Intercept) -2.383e+01 1.527e+01 -1.560 0.12367

Acerage 1.988e-03 6.742e-04 2.948 0.00446 **

Maxdepth 3.366e-01 1.776e-01 1.896 0.06253 .

NO3 8.673e+00 2.773e+00 3.127 0.00265 **



Multiple R-squared: 0.2798, Adjusted R-squared: 0.2461

F-statistic: 8.289 on 3 and 64 DF, p-value: 9.717e-05

拓端tecdat|R语言代码编写逐步多元回归模型分析长鼻鱼密度影响因素_数据_07

 

 

 

 方差分析

 

 

 

Anova Table (Type II tests)



Response: Longnose

Sum Sq Df F value Pr(>F)

Acerage 14652 1 8.6904 0.004461 **

Maxdepth 6058 1 3.5933 0.062529 .

NO3 16489 1 9.7802 0.002654 **

Residuals 107904 64

拓端tecdat|R语言代码编写逐步多元回归模型分析长鼻鱼密度影响因素_似然比_08

 

 

 

预测值图

 

 

 

 

拓端tecdat|R语言代码编写逐步多元回归模型分析长鼻鱼密度影响因素_似然比_09

拓端tecdat|R语言代码编写逐步多元回归模型分析长鼻鱼密度影响因素_数据_10

 

 

 

 

 

检查模型的假设

 

 

 

拓端tecdat|R语言代码编写逐步多元回归模型分析长鼻鱼密度影响因素_数据_11

拓端tecdat|R语言代码编写逐步多元回归模型分析长鼻鱼密度影响因素_数据_12

 

 

 

 线性模型中残差的直方图。这些残差的分布应近似正态。

 

 

 

 

 

拓端tecdat|R语言代码编写逐步多元回归模型分析长鼻鱼密度影响因素_似然比_13

拓端tecdat|R语言代码编写逐步多元回归模型分析长鼻鱼密度影响因素_数据_14

 

 

 

 

 

残差与预测值的关系图。残差应无偏且均等。 

 

 

 

 

 

             

 

 

 

模型拟合标准

 

模型拟合标准可用于确定最合适的模型。使用AIC或可选的BIC。AICc是对AIC的一种调整,它更适合于观测值相对较少的数据集。AIC,AICc和BIC越小越好。

 

 

 

在下面的例子中,我们只讨论了显著相关的种植面积MAXDEPTHNO3 。 

 

$Models

Formula

1 "Longnose ~ Acerage"

2 "Longnose ~ Maxdepth"

3 "Longnose ~ NO3"

4 "Longnose ~ Acerage + Maxdepth"

5 "Longnose ~ Acerage + NO3"

6 "Longnose ~ Maxdepth + NO3"

7 "Longnose ~ Acerage + Maxdepth + NO3"

8 "Longnose ~ Acerage + Maxdepth + NO3 + DO2"

9 "Longnose ~ Acerage + Maxdepth + NO3 + SO4"

10 "Longnose ~ Acerage + Maxdepth + NO3 + Temp"



$Fit.criteria

Rank Df.res AIC AICc BIC R.squared Adj.R.sq p.value Shapiro.W Shapiro.p

1 2 66 713.7 714.1 720.4 0.12010 0.10670 3.796e-03 0.7278 6.460e-10

2 2 66 715.8 716.2 722.4 0.09301 0.07927 1.144e-02 0.7923 2.115e-08

3 2 66 715.6 716.0 722.2 0.09562 0.08192 1.029e-02 0.7361 9.803e-10

4 3 65 711.8 712.4 720.6 0.16980 0.14420 2.365e-03 0.7934 2.250e-08

5 3 65 705.8 706.5 714.7 0.23940 0.21600 1.373e-04 0.7505 2.055e-09

6 3 65 710.8 711.4 719.6 0.18200 0.15690 1.458e-03 0.8149 8.405e-08

7 4 64 704.1 705.1 715.2 0.27980 0.24610 9.717e-05 0.8108 6.511e-08

8 5 63 705.7 707.1 719.0 0.28430 0.23890 2.643e-04 0.8041 4.283e-08

9 5 63 706.1 707.5 719.4 0.27990 0.23410 3.166e-04 0.8104 6.345e-08

10 5 63 704.2 705.6 717.5 0.29950 0.25500 1.409e-04 0.8225 1.371e-07

拓端tecdat|R语言代码编写逐步多元回归模型分析长鼻鱼密度影响因素_数据_15

 

拓端tecdat|R语言代码编写逐步多元回归模型分析长鼻鱼密度影响因素_5e_16

拓端tecdat|R语言代码编写逐步多元回归模型分析长鼻鱼密度影响因素_似然比_17

 

 

 

几个模型的AICc(修改后的Akaike信息标准)图。模型7最小化了AICc,因此被选为该模型中的最佳模型。

 

 

 

 

 

将模型与似然比检验进行比较

 

将模型与 平方和检验或似然比检验进行比较,以查看是否有其他项显着减少平方误差和 。

 

Analysis of Variance Table



Model 1: Longnose ~ Acerage + Maxdepth + NO3

Model 2: Longnose ~ Acerage + Maxdepth



Res.Df RSS Df Sum of Sq F Pr(>F)

1 64 107904

2 65 124393 -1 -16489 9.7802 0.002654 **





Likelihood ratio test



Model 1: Longnose ~ Acerage + Maxdepth + NO3

Model 2: Longnose ~ Acerage + Maxdepth



#Df LogLik Df Chisq Pr(>Chisq)

1 5 -347.05

2 4 -351.89 -1 9.6701 0.001873 **





Model 1: Longnose ~ Acerage + Maxdepth + NO3 + DO2

Model 2: Longnose ~ Acerage + Maxdepth + NO3 + SO4

Model 3: Longnose ~ Acerage + Maxdepth + NO3 + Temp

Model A: Longnose ~ Acerage + Maxdepth + NO3



DfO RSSO DfA RSSA Df SS F Pr(>F)

1vA 63 107234.38 64 107903.97 -1 -669.59 0.3934 0.5328

2vA 63 107898.06 64 107903.97 -1 -5.91 0.0035 0.9533

3vA 63 104955.97 64 107903.97 -1 -2948.00 1.7695 0.1882






Model 1: Longnose ~ Acerage + Maxdepth + NO3 + DO2

Model 2: Longnose ~ Acerage + Maxdepth + NO3 + SO4

Model 3: Longnose ~ Acerage + Maxdepth + NO3 + Temp

Model A: Longnose ~ Acerage + Maxdepth + NO3



DfO logLikO DfA logLikA Df logLik Chisq Pr(>Chisq)

1vA 63 -346.83881 64 -347.05045 -1 0.21164 0.4233 0.5153

2vA 63 -347.04859 64 -347.05045 -1 0.00186 0.0037 0.9513

3vA 63 -346.10863 64 -347.05045 -1 0.94182 1.8836 0.1699

拓端tecdat|R语言代码编写逐步多元回归模型分析长鼻鱼密度影响因素_5e_18

 

 

 

 



标签:Longnose,0.00,Acerage,tecdat,拓端,Maxdepth,模型,多元回归,NO3
From: https://blog.51cto.com/u_14293657/5895249

相关文章