R (randomForest): ntree = 1 不管我怎么改
R (randomForest): ntree = 1 no matter how I change it
我 运行 使用 运行domForest 包的 运行dom 森林分类。完成后,我在分类器上键入 summary() ,当我被告知默认值为 500 时,ntree 参数似乎保留为 1,并且可以在 [=14 的参数中手动更改=]domForest,我试过没有成功。
我也用另一个数据集试过了,我遇到了同样的问题。有谁知道可能发生的事情吗?
TL;DR: 要获得模型的摘要,只需键入模型对象的名称。例如,如果模型对象是 rf1
,类型是 rf1
,而不是 summary(rf1)
。
大多数包都有一个摘要 "method",当您 运行 summary
处理包生成的对象时,它会被调度。但是在 randomForest
的情况下,似乎没有汇总方法。 randomForest
的输出是一个包含一堆模型输出的列表。当你在上面 运行 summary
时,它只是 运行 默认的 summary
函数,它 return 是每个列表元素的长度,这不是很在这里有用。
因此,在这种情况下,当您在 randomForest
模型对象上 运行 summary
时,您会看到 ntree
的值为 1,因为 ntree
是由 randomForest
编辑的列表 return 的一个元素,它是一个长度为 1 的向量。(注意 summary
输出的列名是 Length
.)
要查看模型结果的摘要,只需键入您的模型对象的名称,这将导致将实际摘要打印到控制台。例如,如果您的模型对象名为 rf1
,则只需键入 rf1
,而不是 summary(rf1)
。键入对象名称会导致调度 print.randomForest
方法,这确实提供了 randomForest
结果的摘要,包括 ntree
。
如果您想从模型中提取 ntree
的值或其他结果,运行 str(rf1)
查看 return 由 randomForest
并查看 randomForest
的帮助以获取有关此列表中内容的更多信息。例如,rf1$ntree
将 return 模型中的树数。
我 运行 使用 运行domForest 包的 运行dom 森林分类。完成后,我在分类器上键入 summary() ,当我被告知默认值为 500 时,ntree 参数似乎保留为 1,并且可以在 [=14 的参数中手动更改=]domForest,我试过没有成功。
我也用另一个数据集试过了,我遇到了同样的问题。有谁知道可能发生的事情吗?
TL;DR: 要获得模型的摘要,只需键入模型对象的名称。例如,如果模型对象是 rf1
,类型是 rf1
,而不是 summary(rf1)
。
大多数包都有一个摘要 "method",当您 运行 summary
处理包生成的对象时,它会被调度。但是在 randomForest
的情况下,似乎没有汇总方法。 randomForest
的输出是一个包含一堆模型输出的列表。当你在上面 运行 summary
时,它只是 运行 默认的 summary
函数,它 return 是每个列表元素的长度,这不是很在这里有用。
因此,在这种情况下,当您在 randomForest
模型对象上 运行 summary
时,您会看到 ntree
的值为 1,因为 ntree
是由 randomForest
编辑的列表 return 的一个元素,它是一个长度为 1 的向量。(注意 summary
输出的列名是 Length
.)
要查看模型结果的摘要,只需键入您的模型对象的名称,这将导致将实际摘要打印到控制台。例如,如果您的模型对象名为 rf1
,则只需键入 rf1
,而不是 summary(rf1)
。键入对象名称会导致调度 print.randomForest
方法,这确实提供了 randomForest
结果的摘要,包括 ntree
。
如果您想从模型中提取 ntree
的值或其他结果,运行 str(rf1)
查看 return 由 randomForest
并查看 randomForest
的帮助以获取有关此列表中内容的更多信息。例如,rf1$ntree
将 return 模型中的树数。