如何为 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_Var11 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 10 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_Var21 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 10 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_Var31 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 10 6 4
1 2 8
以上是 如何为 R 中的 rpart 模型创建混淆矩阵? 的全部内容, 来源链接: utcz.com/z/331643.html