如何为 R 中的 rpart 模型创建混淆矩阵?

要为 rpart 模型创建混淆矩阵,我们首先需要找到预测值,然后可以创建预测值表和原始数据中的响应变量,这将是模型的混淆矩阵。

例如,如果我们有一个预测值向量,比如数据帧 df$O 中的 P 和原始值,那么可以使用以下命令创建混淆矩阵 -

table(P,df$O)

查看以下示例以了解如何完成。

示例 1

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

Dep_Var1<-factor(sample(0:1,20,replace=TRUE))

Indep_Var1<-rpois(20,5)

df1<-data.frame(Dep_Var1,Indep_Var1)

df1

创建了以下数据框

 Dep_Var1 Indep_Var1

1   0      4

2   0     11

3   0      3

4   0      6

5   0      3

6   1      5

7   1      4

8   0      4

9   1      5

10  0      3

11  1      5

12  1      4

13  0      2

14  0      3

15  0      5

16  1      9

17  1      5

18  0      9

19  1      2

20  0      2

要在上面创建的数据框上加载 rpart 包,请将以下代码添加到上面的代码段中 -

Dep_Var1<-factor(sample(0:1,20,replace=TRUE))

Indep_Var1<-rpois(20,5)

df1<-data.frame(Dep_Var1,Indep_Var1)

library(rpart)

要创建 rpart 模型并在上面创建的数据框中找到 df1 中数据的预测值,请将以下代码添加到上面的代码段中 -

Dep_Var1<-factor(sample(0:1,20,replace=TRUE))

Indep_Var1<-rpois(20,5)

df1<-data.frame(Dep_Var1,Indep_Var1)

library(rpart)

Model_1<-rpart(Dep_Var1~Indep_Var1,data=df1)

Prediction_Model_1<-predict(Model_1,type="class")

要在上面创建的数据框上创建混淆矩阵,请将以下代码添加到上面的代码段中 -

Dep_Var1<-factor(sample(0:1,20,replace=TRUE))

Indep_Var1<-rpois(20,5)

df1<-data.frame(Dep_Var1,Indep_Var1)

library(rpart)

Model_1<-rpart(Dep_Var1~Indep_Var1,data=df1)

Prediction_Model_1<-predict(Model_1,type="class")

table(Prediction_Model_1,df1$Dep_Var1)

输出结果

如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -

Prediction_Model_1 0 1

                 0 6 1

                 1 6 7

示例 2

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

Dep_Var2<-factor(sample(0:1,20,replace=TRUE))

Indep_Var2<-rnorm(20)

df2<-data.frame(Dep_Var2,Indep_Var2)

df2

创建了以下数据框

  Dep_Var2 Indep_Var2

1  0        1.139577556

2  1        0.006968284

3  1        0.438159515

4  1        0.599715153

5  1        1.870112573

6  0       -0.810537941

7  0       -0.733628480

8  1        0.625663690

9  1        0.696501333

10 1       -0.967849897

11 1       -2.392595836

12 1        1.459343862

13 1       -0.026408590

14 0       -1.254218214

15 0       -0.865296394

16 0        0.443057916

17 0        1.172367014

18 0        1.334406228

19 1        1.262094268

20 0        0.887480542

要创建 rpart 模型并在上面创建的数据框中找到 df2 中数据的预测值,请将以下代码添加到上面的代码段中 -

Dep_Var2<-factor(sample(0:1,20,replace=TRUE))

Indep_Var2<-rnorm(20)

df2<-data.frame(Dep_Var2,Indep_Var2)

library(rpart)

Model_2<-rpart(Dep_Var2~Indep_Var2,data=df2)

Prediction_Model_2<-predict(Model_2,type="class")

要在上面创建的数据框上创建混淆矩阵,请将以下代码添加到上面的代码段中 -

Dep_Var2<-factor(sample(0:1,20,replace=TRUE))

Indep_Var2<-rnorm(20)

df2<-data.frame(Dep_Var2,Indep_Var2)

library(rpart)

Model_2<-rpart(Dep_Var2~Indep_Var2,data=df2)

Prediction_Model_2<-predict(Model_2,type="class")

table(Prediction_Model_2,df2$Dep_Var2)

输出结果

如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -

Prediction_Model_2 0 1

                 0 4 3

                 1 5 8

示例 3

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

Dep_Var3<-factor(sample(0:1,20,replace=TRUE))

Indep_Var3<-sample(501:1000,20)

df3<-data.frame(Dep_Var3,Indep_Var3)

df3

创建了以下数据框

 Dep_Var3 Indep_Var3

1  1       530

2  0       554

3  0       510

4  1       782

5  0       648

6  1       546

7  1       762

8  0       666

9  1       733

10 0       928

11 0       902

12 1       602

13 1       933

14 1       987

15 1       743

16 0       515

17 1       867

18 1       945

19 0       503

20 1       512

要创建 rpart 模型并在上面创建的数据框中找到 df3 中数据的预测值,请将以下代码添加到上面的代码段中 -

Dep_Var3<-factor(sample(0:1,20,replace=TRUE))

Indep_Var3<-sample(501:1000,20)

df3<-data.frame(Dep_Var3,Indep_Var3)

library(rpart)

Model_3<-rpart(Dep_Var3~Indep_Var3,data=df3)

Prediction_Model_3<-predict(Model_3,type="class")

要在上面创建的数据框上创建混淆矩阵,请将以下代码添加到上面的代码段中 -

Dep_Var3<-factor(sample(0:1,20,replace=TRUE))

Indep_Var3<-sample(501:1000,20)

df3<-data.frame(Dep_Var3,Indep_Var3)

library(rpart)

Model_3<-rpart(Dep_Var3~Indep_Var3,data=df3)

Prediction_Model_3<-predict(Model_3,type="class")

table(Prediction_Model_3,df3$Dep_Var3)

输出结果

如果您将上述所有给定的片段作为单个程序执行,它会生成以下输出 -

Prediction_Model_3 0 1

                 0 6 4

                 1 2 8

以上是 如何为 R 中的 rpart 模型创建混淆矩阵? 的全部内容, 来源链接: utcz.com/z/331643.html

回到顶部