1

以下のコードを実行すると、R がクラッシュします。train の呼び出しで tuneGrid 行をコメント アウトすると、クラッシュは発生しません。別のデータセットでこれを試してみましたが、それでも R がクラッシュします。

コードは次のとおりです。

library(splines)
library(foreach)
library(gam)
library(lattice)
library(ggplot2)
library(caret)

# crashes when I uncomment the tuneGrid = tuneGrid line

Set_seed_seed <- 100
data_set <- diamonds[, c(1, 5, 6, 7, 8, 9, 10)]
data_set <- data_set[1:1000,]
formula <- price ~ carat + depth + table + x + y + z
training_control <- trainControl(method = "cv", allowParallel = FALSE)
tune_grid <- expand.grid(span = seq(0.1, 0.9, length = 9), degree = seq(1, 2, length = 2))
set.seed(Set_seed_seed)
GAM_model <- train(formula,
                  data = data_set,
                  method = "gamLoess", 
                  tuneGrid = tune_grid,
                  trControl = training_control
               )

これは、R Studio を使用する R3.2.1 および 3.2.2 で発生しました。

R gui では、クラッシュも発生します。

4

2 に答える 2

2

gamパッケージのバグです。私は 2014 年 3 月 3 日に Trevor Hastie に警告しました。

 library(gam)
 set.seed(1)
 x <- rnorm(1000)
 y <- x^2+0.1*rnorm(1000)
 tdat <- data.frame(y = y, x = x)

 m1 <- gam(y ~ lo(x, span = .5, degree = 2), data = tdat)

それは正常に機能しますが、複数のモデルに適合すると、セグフォルトが発生します(ただし、黄土と次数= 2の場合のみ)。

これは私のためにそれを生成します:

 for(i in 1:10) m1 <- gam(y ~ lo(x, span = .5, degree = 2), data = tdat)
于 2015-08-18T22:37:19.167 に答える