将线性模型拟合到 R 编程中的数据集 – glm()函数
R 语言中的glm()函数用于将线性模型拟合到数据集。这里,glm 代表广义线性模型。
Syntax: glm(formula)
Parameters:
formula: specified formula
示例 1:
Python3
# R program to illustrate
# glm function
# R growth of orange trees dataset
Orange
# Putting age, Tree, circumference into the R search path
attach(Orange)
# Calling glm() function
g <- glm(circumference ~ age + Tree)
g
Python3
# R program to illustrate
# glm function
# Initializing some vectors
A <- c(0, 1, 2, 3)
B <- c(2, 4, 6, 8)
Y <- c(0.1, 0.2, 0.3, 0.4)
# Creating data from
my_data <- data.frame(A, B, Y)
# Putting above data into the R search path
attach(my_data)
# Calling glm() function
x <- glm( Y ~ A + B + A * B)
x
输出:
Tree age circumference
1 1 118 30
2 1 484 58
3 1 664 87
4 1 1004 115
5 1 1231 120
6 1 1372 142
7 1 1582 145
8 2 118 33
9 2 484 69
10 2 664 111
11 2 1004 156
12 2 1231 172
13 2 1372 203
14 2 1582 203
15 3 118 30
16 3 484 51
17 3 664 75
18 3 1004 108
19 3 1231 115
20 3 1372 139
21 3 1582 140
22 4 118 32
23 4 484 62
24 4 664 112
25 4 1004 167
26 4 1231 179
27 4 1372 209
28 4 1582 214
29 5 118 30
30 5 484 49
31 5 664 81
32 5 1004 125
33 5 1231 142
34 5 1372 174
35 5 1582 177
Call: glm(formula = circumference ~ age + Tree)
Coefficients:
(Intercept) age Tree.L Tree.Q Tree.C Tree^4
17.3997 0.1068 39.9350 2.5199 -8.2671 -4.6955
Degrees of Freedom: 34 Total (i.e. Null); 29 Residual
Null Deviance: 112400
Residual Deviance: 6754 AIC: 297.5
示例 2:
Python3
# R program to illustrate
# glm function
# Initializing some vectors
A <- c(0, 1, 2, 3)
B <- c(2, 4, 6, 8)
Y <- c(0.1, 0.2, 0.3, 0.4)
# Creating data from
my_data <- data.frame(A, B, Y)
# Putting above data into the R search path
attach(my_data)
# Calling glm() function
x <- glm( Y ~ A + B + A * B)
x
输出:
Call: glm(formula = Y ~ A + B + A * B)
Coefficients:
(Intercept) A B A:B
1.000e-01 1.000e-01 NA 1.418e-17
Degrees of Freedom: 3 Total (i.e. Null); 1 Residual
Null Deviance: 0.05
Residual Deviance: 2.542e-32 AIC: -277.2
The following objects are masked _by_.GlobalEnv:
A, B, Y