楼主: xiaoxiaofei_123
7348 0

[学习分享] R 中关于rpart包的理解 [推广有奖]

  • 0关注
  • 0粉丝

已卖:2份资源

大专生

56%

还不是VIP/贵宾

-

威望
0
论坛币
51 个
通用积分
4.4196
学术水平
31 点
热心指数
40 点
信用等级
21 点
经验
1119 点
帖子
15
精华
0
在线时间
68 小时
注册时间
2017-10-11
最后登录
2020-4-30

楼主
xiaoxiaofei_123 发表于 2017-10-16 11:06:17 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
1 "rpart"包
rpart包中的rpart()函数:构建决策树,允许选择具有最小预测误差的决策树,然后在使用predict函数进行预测。
ls("package:rpart")
##[1] "car.test.frame" "car90"          "cu.summary"     "kyphosis"       "meanvar"      
[6] "na.rpart"       "path.rpart"     "plotcp"         "post"           "printcp"      
[11] "prune"          "prune.rpart"    "rpart"          "rpart.control"  "rpart.exp"     
[16] "rsq.rpart"      "snip.rpart"     "solder"         "stagec"         "xpred.rpart"
rpart包的rpart(formula, data, method, control, parms)函数:拟合rpart模型。formula为拟合公式;data为数据集;method:树的末端数据类型选择相应的变量分割方法:连续性method=“anova”,离散型method=“class”,计数型method=“poisson”,生存分析型method=“exp”;parms用来设置三个参数:先验概率、损失矩阵、分类纯度的度量方法(gini和information);control:为rpart算法的控制细节选项;cost我觉得是损失矩阵,在剪枝的时候,叶子节点的加权误差与父节点的误差进行比较,考虑损失矩阵的时候,从将“减少-误差”调整为“减少-损失”
rpart.control(minsplit = 20, minbucket = round(minsplit/3), cp = 0.01,
    maxcompete = 4L, maxsurrogate = 5L, usesurrogate = 2L, xval = 10,
    surrogatestyle = 0L, maxdepth = 30L, ...) 对树进行一些设置。 minsplit是最小分支节点数,这里指大于等于20,那么该节点会继续分划下去,否则停止;minbucket:叶子节点最小样本数;maxdepth:树的深度;cp全称为complexity parameter,指某个点的复杂度,对每一步拆分,模型的拟合优度必须提高的程度,将要被修剪的rpart复杂性参数;xval是10折交叉验证。





2.rpart包提供了复杂度损失修剪的修剪方法,printcp会告诉分裂到每一层,cp是多少,平均相对误差是多少
   选择具有最小xerror的cp的办法
prune(fit, cp= fit$cptable[which.min(fit$cptable[,"xerror"]),"CP"])  


3. 画图的包(“rpart.plot”)
rpart.plot (x = stop("no 'x' arg"), type = 2, extra = "auto", under = FALSE,
    fallen.leaves = TRUE, digits = 2, varlen = 0, faclen = 0,
    cex = NULL, tweak = 1, snip = FALSE, box.palette = "auto",
    shadow.col = 0, ...) 画出rpart(决策树)模型。x为rpart模型;extra在节点上显示额外的信息,不同的数字代表不同的类型(请参考帮助);branch控制分支线的形状,指定一个值在0(V形分支)和1(方形分支),默认情况下(fallen.leaves)为1否则为2;type为画图的类型,分为5种:
0默认。画一个分裂的标签,在叶子的每一个分裂标签和一个节点标签。
1标签所有节点,不只是树叶。
2像1,但绘制的标签下面的节点标签。
3为左、右方向画单独的拆分标签。
4像3,但标签的所有节点,不只是叶子节点,类似于文本。





二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:rpart PART ART information Complexity

已有 1 人评分经验 学术水平 热心指数 信用等级 收起 理由
阿扁V5 + 100 + 5 + 5 + 5 精彩帖子

总评分: 经验 + 100  学术水平 + 5  热心指数 + 5  信用等级 + 5   查看全部评分

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-21 22:10