R语言ranger包 ranger函数使用说明

您所在的位置:网站首页 ranger的意思 R语言ranger包 ranger函数使用说明

R语言ranger包 ranger函数使用说明

2024-04-24 00:19| 来源: 网络整理| 查看: 265

返回R语言ranger包函数列表

功能\作用概述:

Ranger是随机林(Breiman 2001)或递归分区的快速实现,特别适用于高维数据.分类退化和生存森林2.分类回归森林和原始随机森林一样实施(Breiman 2001),随机生存林中的生存林(Ishwaran et al.2008)。包括极端随机树(Geurts et al.2006)和分位数回归林(Meinshausen 2006)的实现。

语法\用法:

ranger( formula = NULL, data = NULL, num.trees = 500, mtry = NULL, importance = "none", write.forest = TRUE, probability = FALSE, min.node.size = NULL, max.depth = NULL, replace = TRUE, sample.fraction = ifelse(replace, 1, 0.632), case.weights = NULL, class.weights = NULL, splitrule = NULL, num.random.splits = 1, alpha = 0.5, minprop = 0.1, split.select.weights = NULL, always.split.variables = NULL, respect.unordered.factors = NULL, scale.permutation.importance = FALSE, local.importance = FALSE, regularization.factor = 1, regularization.usedepth = FALSE, keep.inbag = FALSE, inbag = NULL, holdout = FALSE, quantreg = FALSE, oob.error = TRUE, num.threads = NULL, save.memory = FALSE, verbose = TRUE, seed = NULL, dependent.variable.name = NULL, status.variable.name = NULL, classification = NULL, x = NULL, y = NULL)

参数说明:

formula : 描述要拟合的模型的类公式或字符的对象。只支持数值变量的相互作用项。

data : 班级培训资料数据框,矩阵,dgCMatrix(矩阵)或gwaa.数据(吉纳贝尔)。

num.trees : 树的数量。

mtry : 每个节点中可能拆分的变量数。默认值是数字变量的平方根(向下舍入)。或者,一个单参数函数返回一个整数,给定自变量的数目。

importance : 变量重要性模式,“无”、“杂质”、“1”、“置换”之一。“杂质”指标是分类的基尼指数、回归的方差和生存的检验统计量之和(见splitrule)。

write.forest : 保存森林管理员对象,用于预测。如果没有预期的预测,则设置为FALSE以减少内存使用。

probability : 如Malley等人(2012)所述,种植概率森林。

min.node.size : 最小节点大小。分类默认值为1,回归默认值为5,生存默认值为3,概率默认值为10。

max.depth : 最大树深度。值为NULL或0(默认值)对应于无限深度,1对应于树桩(每棵树1个分割)。

replace : 更换样品。

sample.fraction : 样本的观察分数。对于带替换的采样,默认值为1;对于不带替换的采样,默认值为0.632。对于分类,这可以是类特定值的向量。

case.weights : 训练观察取样的权重。在树的自举(或子抽样)样本中,选择权重较大的观测值的概率较高。

class.weights : 分割规则(成本敏感学习)中结果类的权重(按因子水平的顺序)。仅分类和概率预测。对于分类,权重也应用于终端节点的多数投票。

splitrule : 拆分规则。用于分类和概率估计的“基尼”、“外树”或“海林格”,默认为“基尼”。对于带有默认“方差”的回归“方差”、“外部树”、“maxstat”或“beta”。对于生存“logrank”、“extratrees”、“C”或“maxstat”,默认为“logrank”。

num.random.splits : 对于“extratrees”splitrule.:每个候选拆分变量要考虑的随机拆分数。

alpha : 对于“maxstat”splitrule:允许拆分的重要性阈值。

minprop : 对于“maxstat”分割规则:要考虑分割的协变量分布的下分位数。

split.select.weights : 权重介于0和1之间的数字向量,表示选择要拆分的变量的概率。或者,一个大小列表树木数,包含每个树的拆分选择权重向量。

always.split.variables : 除尝试拆分的mtry变量外,始终选择变量名的字符向量。

respect.unordered.factors : 无序因子协变量的处理。“忽略”、“顺序”和“分区”之一。对于“extratrees”splitrule,所有其他splitrules的默认值为“partition”ignore。或者可以使用TRUE(=“order”)或FALSE(=“ignore”)。详见下文。

scale.permutation.importance : 按标准误差衡量排列重要性,如(Breiman 2001)。仅在选择置换变量重要性模式时适用。

local.importance : 计算并返回本地重要性值,如(Breiman 2001)。仅当重要性设置为“排列”时适用。

regularization.factor : 正则化因子(增益惩罚),长度为p的向量或所有变量的一个值。

regularization.usedepth : 考虑正则化的深度。

keep.inbag : 保存观察结果在每棵树的袋子里的频率。

inbag : 手动设置每棵树的观测值。大小列表树木数,包含每次观察的inbag计数。可用于分层抽样。

holdout : 保持模式。拿出所有案例权重为0的样本,并将其用于变量重要性和预测误差。

quantreg : 准备分位数回归森林中的分位数预测(Meinshausen 2006)。仅限回归。套保留.inbag=为真,准备袋外分位数预测。

oob.error : 计算OOB预测错误。设置为FALSE可节省计算时间,例如,对于大型生存林。

num.threads : 线程数。默认值是可用CPU的数量。

save.memory : 使用节省内存(但速度较慢)的拆分模式。对生存和GWAS数据没有影响。警告:此选项会减慢树的生长速度,仅在遇到内存问题时使用。

verbose : 显示计算状态和估计运行时间。

seed : 随机种子。默认值为NULL,从R生成种子。设置为0将忽略R种子。

dependent.variable.name : 因变量的名称,如果没有给出公式则需要。对于生存森林来说,这是时间变量。

status.variable.name : 状态变量的名称,仅适用于生存数据,如果没有给出公式则需要。使用1表示事件,使用0表示审查。

classification : 设置为TRUE以生长分类林。仅当数据是矩阵或响应数字时才需要。

x : 预测数据(自变量),使用公式或因变量名称.

y : 响应向量(因变量),使用公式或因变量名称. 为了生存,使用Surv()对象或带有时间和状态的矩阵。

示例\实例:

## Classification forest with default settingsranger(Species ~ ., data = iris)

## Predictiontrain.idx < - sample(nrow(iris), 2/3 * nrow(iris))iris.train < - iris[train.idx, ]iris.test < - iris[-train.idx, ]rg.iris < - ranger(Species ~ ., data = iris.train)pred.iris < - predict(rg.iris, data = iris.test)table(iris.test$Species, pred.iris$predictions)

## Quantile regression forestrf < - ranger(mpg ~ ., mtcars[1:26, ], quantreg = TRUE)pred < - predict(rf, mtcars[27:32, ], type = "quantiles")pred$predictions

## Variable importancerg.iris < - ranger(Species ~ ., data = iris, importance = "impurity")rg.iris$variable.importance

## Survival forestrequire(survival)rg.veteran < - ranger(Surv(time, status) ~ ., data = veteran)plot(rg.veteran$unique.death.times, rg.veteran$survival[1,])

## Alternative interfaces (same results)ranger(dependent.variable.name = "Species", data = iris)ranger(y = iris[, 5], x = iris[, -5])

## Not run: ## Use GenABEL interface to read Plink data into R and grow a classification forest## The ped and map files are not includedlibrary(GenABEL)convert.snp.ped("data.ped", "data.map", "data.raw")dat.gwaa < - load.gwaa.data("data.pheno", "data.raw")phdata(dat.gwaa)$trait < - factor(phdata(dat.gwaa)$trait)ranger(trait ~ ., data = dat.gwaa)

## End(Not run)



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3