区分 R 中的分类和数值自变量。


对于分类变量,每个水平都被视为一个自变量,并由因子函数识别。另一方面,数值自变量本质上是连续的或离散的。

查看下面给出的线性回归模型摘要示例,以了解分类和数值自变量之间的区别。

示例

以下代码片段创建了一个示例数据框 -

x<-rpois(20,2)
y<-rpois(20,5)
df<-data.frame(x,y)
df

创建了以下数据框

   x y
1  1 1
2  4 5
3  3 10
4  3 4
5  1 6
6  3 4
7  1 2
8  1 10
9  1 6
10 2 5
11 1 2
12 3 4
13 0 5
14 1 5
15 4 5
16 4 7
17 3 5
18 2 4
19 1 3
20 2 6

要为 df 中的数据创建线性模型并在上述创建的数据框上查找模型摘要,请将以下代码添加到上述代码片段中 -

x<-rpois(20,2)
y<-rpois(20,5)
df<-data.frame(x,y)
Model_1<-lm(y~x,data=df)
summary(Model_1)

输出

如果您将上面给出的所有代码片段作为一个程序执行,它将生成以下输出 -

Call:
lm(formula = y ~ x, data = df)

Residuals:
   Min     1Q  Median    3Q   Max
-3.549 -1.313  -0.503 1.128 5.451
Coefficients:
         Estimate Std. Error t value Pr(|t|)
(Intercept) 4.168      1.013   4.11  0.00065 ***
x           0.382      0.426   0.90  0.38249
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 2.29 on 18 degrees of freedom
Multiple R-squared: 0.0426, Adjusted R-squared: -0.0106
F-statistic: 0.801 on 1 and 18 DF, p-value: 0.382

要为 df 中的数据创建线性模型,并将作为因子变量,并在上述创建的数据框上查找模型摘要,请将以下代码添加到上述代码片段中 -

x<-rpois(20,2)
y<-rpois(20,5)
df<-data.frame(x,y)
Model_1<-lm(y~x,data=df)
Model_2<-lm(y~factor(x),data=df)
summary(Model_2)

输出

如果您将上面给出的所有代码片段作为一个程序执行,它将生成以下输出 -

Call:
lm(formula = y ~ factor(x), data = df)

Residuals:
   Min     1Q  Median    3Q   Max
-3.375 -1.400  -0.533 1.083 5.625

Coefficients:
           Estimate Std.   Error t value   Pr(|t|)
(Intercept) 5.00e+00     2.50e+00  2.00    0.064 .
factor(x)1 -6.25e-01     2.65e+00 -0.24    0.817
factor(x)2 -3.92e-15     2.89e+00  0.00    1.000
factor(x)3  4.00e-01     2.74e+00  0.15    0.886
factor(x)4  6.67e-01     2.89e+00  0.23    0.820
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 2.5 on 15 degrees of freedom
Multiple R-squared: 0.0526, Adjusted R-squared: -0.2
F-statistic: 0.208 on 4 and 15 DF, p-value: 0.93

更新于: 2021年11月3日

709 次浏览

启动你的 职业生涯

通过完成课程获得认证

开始
广告