Forgot to cc...
On Fri, Sep 19, 2008 at 3:22 PM, Max Kuhn <mxkuhn at gmail.com> wrote:
A new version 3.41 is on https://r-forge.r-project.org/projects/caret/ Until later tonight, you will have to get it via svn checkout svn://svn.r-forge.r-project.org/svnroot/caret and build it yourself. Usage examples: library(caret) library(mlbench) data(BostonHousing) gbm1 <- train(medv ~ ., data = BostonHousing, "gbm", distribution = "laplace", verbose = FALSE) gbm2 <- train(medv ~ ., data = BostonHousing, "gbm", verbose = FALSE) gbm3 <- train(medv ~ ., data = BostonHousing, "gbm", verbose = FALSE, distribution = list(name="quantile",alpha=0.5)) Max On Fri, Sep 19, 2008 at 2:49 PM, Max Kuhn <mxkuhn at gmail.com> wrote:
Peter, train looks at the class of the outcome variable to determine the type of model (regression or classification). Rather than making everyone specify the distribution in every case, it switches between "bernoulli" and "gaussian". For other models, train looks at the parameters passed via ... and will let those over-ride the automatically generated values. I can do the same for gbm in this context (besides the tuning parameters, this is the only argument that is automatically set for gbm). I'll make the changes and upload a new version to https://r-forge.r-project.org/projects/caret/ It will probably be version 3.41. One other thing - it is usually better to email the package maintainers off-list for questions like this before emailing the list. Max On Thu, Sep 18, 2008 at 2:22 PM, Peter Tait <petertait at sympatico.ca> wrote:
Hi,
I am having problems passing arguments to method="gbm" using the train()
function.
I would like to train gbm using the laplace distribution or the quantile
distribution.
here is the code I used and the error:
gbm.test <- train(x.enet, y.matrix[,7],
method="gbm",
distribution=list(name="quantile",alpha=0.5), verbose=FALSE,
trControl=trainControl(method="cv",number=5),
tuneGrid=gbmGrid
)
Model 1: interaction.depth=1, shrinkage=0.1, n.trees=300
collapsing over other values of n.trees
Error in gbm.fit(trainX, modY, interaction.depth =
tuneValue$.interaction.depth, :
formal argument "distribution" matched by multiple actual arguments
The same error occured with distribution="laplace".
I also tried the following without and success :
gbm.test <- train(x.enet, y.matrix[,7],
method="gbm",
list(distribution="laplace", verbose=FALSE),
trControl=trainControl(method="cv",number=2),
tuneGrid=gbmGrid
)
Model 1: interaction.depth=1, shrinkage=0.1, n.trees=300
collapsing over other values of n.trees
Error in if (is.null(offset) || (offset == 0)) { :
missing value where TRUE/FALSE needed
In addition: Warning message:
In gbm.fit(trainX, modY, interaction.depth = tuneValue$.interaction.depth,
:
NAs introduced by coercion
Any help would be appreciated.
Cheers
Peter
______________________________________________ R-help at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.
-- Max
-- Max
Max