library(fpp3)
library(tidyverse)
library(readxl)
library(rpart)
library(rpart.plot)
library(caret)
library(corrplot)
library(Metrics)
library(e1071)
library(reshape2)
library(Cubist)
library(earth)
This is the technical report for how I calculated the PH predictions for the AVB Beverage company. This report is complimentary to the non-technical report and will be providing details for each step.
I started by reading in the data for both training the model and what we are going to be predicting against.
data <- read_excel("StudentData.xlsx")
eval <- read_excel("StudentEvaluation.xlsx")
print(head(data))
## # A tibble: 6 × 33
## `Brand Code` `Carb Volume` `Fill Ounces` `PC Volume` `Carb Pressure`
## <chr> <dbl> <dbl> <dbl> <dbl>
## 1 B 5.34 24.0 0.263 68.2
## 2 A 5.43 24.0 0.239 68.4
## 3 B 5.29 24.1 0.263 70.8
## 4 A 5.44 24.0 0.293 63
## 5 A 5.49 24.3 0.111 67.2
## 6 A 5.38 23.9 0.269 66.6
## # ℹ 28 more variables: `Carb Temp` <dbl>, PSC <dbl>, `PSC Fill` <dbl>,
## # `PSC CO2` <dbl>, `Mnf Flow` <dbl>, `Carb Pressure1` <dbl>,
## # `Fill Pressure` <dbl>, `Hyd Pressure1` <dbl>, `Hyd Pressure2` <dbl>,
## # `Hyd Pressure3` <dbl>, `Hyd Pressure4` <dbl>, `Filler Level` <dbl>,
## # `Filler Speed` <dbl>, Temperature <dbl>, `Usage cont` <dbl>,
## # `Carb Flow` <dbl>, Density <dbl>, MFR <dbl>, Balling <dbl>,
## # `Pressure Vacuum` <dbl>, PH <dbl>, `Oxygen Filler` <dbl>, …
print(head(eval))
## # A tibble: 6 × 33
## `Brand Code` `Carb Volume` `Fill Ounces` `PC Volume` `Carb Pressure`
## <chr> <dbl> <dbl> <dbl> <dbl>
## 1 D 5.48 24.0 0.27 65.4
## 2 A 5.39 24.0 0.227 63.2
## 3 B 5.29 23.9 0.303 66.4
## 4 B 5.27 23.9 0.186 64.8
## 5 B 5.41 24.2 0.16 69.4
## 6 B 5.29 24.1 0.212 73.4
## # ℹ 28 more variables: `Carb Temp` <dbl>, PSC <dbl>, `PSC Fill` <dbl>,
## # `PSC CO2` <dbl>, `Mnf Flow` <dbl>, `Carb Pressure1` <dbl>,
## # `Fill Pressure` <dbl>, `Hyd Pressure1` <dbl>, `Hyd Pressure2` <dbl>,
## # `Hyd Pressure3` <dbl>, `Hyd Pressure4` <dbl>, `Filler Level` <dbl>,
## # `Filler Speed` <dbl>, Temperature <dbl>, `Usage cont` <dbl>,
## # `Carb Flow` <dbl>, Density <dbl>, MFR <dbl>, Balling <dbl>,
## # `Pressure Vacuum` <dbl>, PH <lgl>, `Oxygen Filler` <dbl>, …
I decided that in this I would do the EDA and then preprocess the data as I came across anything that I found to be problematic.
Firstly, in order to use any of this we need to ensure that 1) every feature is in a numeric format so they can be used by every model, 2) we remove any features that don’t contribute meaningfully, whether they have little variance or they correlate heavily with other features, 3) make sure that there isn’t any missing data for any of the features by imputation.
To accomplish number 1 we just have to look at the first feature
Brand Code
and update that to be numeric. (In the real
world, if I worked at this company I would know what all of these
features mean or I would ask to ensure I have sufficient knowledge for
this whole process. But alas this is not the real world so I will be
making basic assumptions along the way to complete this assignment.) To
update Brand Code
to numeric we will just assign each code
a numeric value assuming A = 1 upward and any missing points will be
given a 0.
data$`Brand Code` |>
unique()
## [1] "B" "A" "C" "D" NA
data1 <- data |>
mutate(
`Brand Code` = case_when(
`Brand Code` == "A" ~ 1,
`Brand Code` == "B" ~ 2,
`Brand Code` == "C" ~ 3,
`Brand Code` == "D" ~ 4,
is.na(`Brand Code`) ~ 0,
# .default = 0
)
) |>
head() |>
print()
## # A tibble: 6 × 33
## `Brand Code` `Carb Volume` `Fill Ounces` `PC Volume` `Carb Pressure`
## <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 2 5.34 24.0 0.263 68.2
## 2 1 5.43 24.0 0.239 68.4
## 3 2 5.29 24.1 0.263 70.8
## 4 1 5.44 24.0 0.293 63
## 5 1 5.49 24.3 0.111 67.2
## 6 1 5.38 23.9 0.269 66.6
## # ℹ 28 more variables: `Carb Temp` <dbl>, PSC <dbl>, `PSC Fill` <dbl>,
## # `PSC CO2` <dbl>, `Mnf Flow` <dbl>, `Carb Pressure1` <dbl>,
## # `Fill Pressure` <dbl>, `Hyd Pressure1` <dbl>, `Hyd Pressure2` <dbl>,
## # `Hyd Pressure3` <dbl>, `Hyd Pressure4` <dbl>, `Filler Level` <dbl>,
## # `Filler Speed` <dbl>, Temperature <dbl>, `Usage cont` <dbl>,
## # `Carb Flow` <dbl>, Density <dbl>, MFR <dbl>, Balling <dbl>,
## # `Pressure Vacuum` <dbl>, PH <dbl>, `Oxygen Filler` <dbl>, …
To complete number 2 I wanted to take a look at the correlation between each of the features to see if there are any that are heavily correlated. There weren’t that many missing data points so I opted to do the imputation after this step. I removed any rows with missing data and then created a correlation plot to see how much things correlated. Not that surprisingly, there were quite a few features heavily correlated.
I then marked any combination that had a correlation coefficient higher than 0.7 to be removed so that only one would remain of each pair, in many cases they chained together so one feature could represent 4 to 5 other features.
create_corrplot <- function(data){
cordata <- cor(data[complete.cases(data),])
corrplot.mixed(cordata, tl.pos="lt")
}
highly_cor <- function(data){
corelated <- data[complete.cases(data),] |>
cor() |>
abs() > 0.7
corelated |>
melt() |>
filter(value & Var1 != Var2) |>
rowwise() |>
mutate(`Highly Cor` = paste(sort(c(Var1,Var2)), collapse = "-")) |>
select(`Highly Cor`) |>
unique() |>
arrange(`Highly Cor`) |>
print()
}
create_corrplot(data1)
This process was slow and manual, adding one feature to remove at a
time and rerunning the code to make sure I wasn’t overshooting anything.
I prioritized any features with many missing values and then features
that could easily be replaced by one other
(i.e. Carb Volume
correlated heavily with 5 features so I
removed the 5 features so only Carb Volume
would remain). I
also set the function to remove any features with low variance using the
nearZeroVar
function which only removed on feature but that
feature was made up of a lot of zeros anyway.
Now with the remaining features I decided to look at their
distributions. Most of them appeared pretty normally distributed so I
decided that the impute
function, which replaces NA with
the median value, would be best to complete the data. Previously before
removing features there were a number that had multiple bell curves and
lots of abnormal shapes, but after removing most of them it was a
reasonable assumption to take the median for missing values. Especially
considering the low number of missing values for each feature.
remove_hc <- function(data){
temp <- data |>
select(-nearZeroVar(data)) |>
select(
-MFR,
-`Alch Rel`,
-`Balling Lvl`,
-Balling,
-`Carb Rel`,
-`Carb Temp`,
-Density,
-`Filler Level`,
-`Fill Pressure`
) |>
impute()
return (as.data.frame(temp))
}
highly_cor(data1)
## # A tibble: 276 × 1
## # Rowwise:
## `Highly Cor`
## <chr>
## 1 Air Pressurer-Alch Rel
## 2 Air Pressurer-Balling Lvl
## 3 Alch Rel-Balling Lvl
## 4 Balling-Air Pressurer
## 5 Balling-Alch Rel
## 6 Balling-Balling Lvl
## 7 Balling-Oxygen Filler
## 8 Balling-PH
## 9 Carb Flow-Air Pressurer
## 10 Carb Flow-Alch Rel
## # ℹ 266 more rows
colSums(is.na(data1))
## Brand Code Carb Volume Fill Ounces PC Volume
## 0 0 0 0
## Carb Pressure Carb Temp PSC PSC Fill
## 0 0 1 0
## PSC CO2 Mnf Flow Carb Pressure1 Fill Pressure
## 0 0 0 0
## Hyd Pressure1 Hyd Pressure2 Hyd Pressure3 Hyd Pressure4
## 0 3 3 0
## Filler Level Filler Speed Temperature Usage cont
## 0 0 0 0
## Carb Flow Density MFR Balling
## 0 0 0 0
## Pressure Vacuum PH Oxygen Filler Bowl Setpoint
## 0 0 0 0
## Pressure Setpoint Air Pressurer Alch Rel Carb Rel
## 0 0 0 0
## Balling Lvl
## 0
ppdata <- remove_hc(data1)
print(head(ppdata))
## Brand Code Carb Volume Fill Ounces PC Volume Carb Pressure PSC PSC Fill
## 1 2 5.340000 23.96667 0.2633333 68.2 0.104 0.26
## 2 1 5.426667 24.00667 0.2386667 68.4 0.124 0.22
## 3 2 5.286667 24.06000 0.2633333 70.8 0.090 0.34
## 4 1 5.440000 24.00667 0.2933333 63.0 0.090 0.42
## 5 1 5.486667 24.31333 0.1113333 67.2 0.026 0.16
## 6 1 5.380000 23.92667 0.2693333 66.6 0.090 0.24
## PSC CO2 Carb Pressure1 Hyd Pressure4 Filler Speed Temperature Usage cont
## 1 0.04 118.8 118 4002 66.0 16.18
## 2 0.04 121.6 106 3986 67.6 19.90
## 3 0.16 120.2 82 4020 67.0 17.76
## 4 0.04 115.2 92 4012 65.6 17.42
## 5 0.12 118.4 92 4010 65.6 17.68
## 6 0.04 119.6 116 4014 66.2 23.82
## Carb Flow Pressure Vacuum PH Oxygen Filler Pressure Setpoint Air Pressurer
## 1 2932 -4.0 8.36 0.022 46.4 142.6
## 2 3144 -4.0 8.26 0.026 46.8 143.0
## 3 2914 -3.8 8.94 0.024 46.6 142.0
## 4 3062 -4.4 8.24 0.030 46.0 146.2
## 5 3054 -4.4 8.26 0.030 46.0 146.2
## 6 2948 -4.4 8.32 0.024 46.0 146.6
ppdata |>
as.list() |>
melt() |>
as_tibble() |>
arrange(value) |>
ggplot() +
geom_histogram(aes(x=value)) +
facet_wrap(~L1, scales = "free")
To sample I set a seed to get consistent, repeatable results and split the data 80/20 for a training and testing data set, respectively.
#setting the seed for all experiments
set.seed(314)
#creating a random sample subset of indices
samp <- sample(nrow(ppdata), round(nrow(ppdata)*0.8), replace = FALSE)
#setting the training and testing data from the sample indices
train <- ppdata[samp,]
test <- ppdata[-samp,]
I created a table to track the metrics for every model to ensure I have a record for which one performed the best by the end. I also wrote a function to write to the table for ease of use.
results <- data.frame(
Kernel = character(),
R2 = double(),
RMSE = double(),
MAE = double(),
Bias = double()
)
metrics <- function(df, kernel, model){
pred <- predict(model, test)
rsq <- R2(pred, test$PH)
rmsqe <- RMSE(pred, test$PH)
mae <- MAE(pred, test$PH)
b1as <- bias(test$PH, pred)
df[nrow(df) + 1,] = c(kernel, rsq, rmsqe, mae, b1as)
return (df)
}
I started with decision trees because they tend to be the easiest to explain to people in a non-technical space. Unfortunately it did not perform very well so I decided to move on to random forests because they are only one step up as far as complexity goes. The random forest model, while better, still left something to be desired. Long story short I continued trying more and more models looking for anything that would give an \(R^2\) greater than 0.8, towards the end I was hoping for anything greater than 0.7. Unfortunately that didn’t happen despite tuning so many functions. I eventually landed on cubist as my final function with the highest \(R^2\) and the lowest RMSE. The rest of this section is just testing methods. (Decision tree and random forests took so long to run it was faster to just do the iterative for loops to get the values I needed.)
#creating a list of complexity parameters to try
cp = c(0.001,0.004,0.006,0.008,0.01,0.02,0.03)
#creating a df to store the results in
df <- data.frame(
cp = integer(),
R2 = double(),
RMSE = double(),
MAE = double(),
Bias = double()
)
#looping through the different cp values and storing choice metrics in df
for (x in cp){
#creation of decision tree model
dt_model <- rpart(
PH~.,
data = train,
control = rpart.control(cp=x)
)
#predicting based on model and getting metrics
pred <- predict(dt_model, test)
#temp storage of choice metrics
rmsqe <- RMSE(pred, test$PH)
rsq <- R2(pred, test$PH)
mae <- MAE(pred, test$PH)
b1as <- bias(test$PH, pred)
#storing metrics for the run
df[nrow(df) + 1,] = c(x, rsq, rmsqe, mae, b1as)
}
#printing metrics for all runs
print(df |> arrange(desc(R2)))
## cp R2 RMSE MAE Bias
## 1 0.001 NA 0.164 0.164 -0.164
## 2 0.004 NA 0.164 0.164 -0.164
## 3 0.006 NA 0.164 0.164 -0.164
## 4 0.008 NA 0.164 0.164 -0.164
## 5 0.010 NA 0.164 0.164 -0.164
## 6 0.020 NA 0.164 0.164 -0.164
## 7 0.030 NA 0.164 0.164 -0.164
results[nrow(results) + 1,] = c("Decision Tree", 0.5131047
, 0.1202118, 0.08532186, -.007126430)
#setting values to test in .mtry parameter
try = c(2:20)
#creating df for storage of metrics
df <- data.frame(
mtry = integer(),
R2 = double(),
RMSE = double(),
MAE = double(),
Bias = double()
)
for (x in try){
# defining model for the run
rf_model <- train(
PH~.,
data = train,
method = "rf",
trControl = trainControl(method = "none"),
#setting .mtry for the run
tuneGrid = expand.grid(.mtry = x),
na.action=na.omit
)
#predicting and getting metrics
pred <- predict(rf_model, test)
#storing choice metrics for run
rmsqe <- RMSE(pred, test$PH)
rsq <- R2(pred, test$PH)
mae <- MAE(pred, test$PH)
b1as <- bias(test$PH, pred)
#storing metrics for run
df[nrow(df) + 1,] = c(x, rsq, rmsqe, mae, b1as)
}
print(df |> arrange(desc(R2)))
## mtry R2 RMSE MAE Bias
## 1 2 NA 0.1914793 0.1914793 -0.1914793
## 2 3 NA 0.1941667 0.1941667 -0.1941667
## 3 4 NA 0.1952833 0.1952833 -0.1952833
## 4 5 NA 0.1972733 0.1972733 -0.1972733
## 5 6 NA 0.1967167 0.1967167 -0.1967167
## 6 7 NA 0.1910633 0.1910633 -0.1910633
## 7 8 NA 0.1932933 0.1932933 -0.1932933
## 8 9 NA 0.1929567 0.1929567 -0.1929567
## 9 10 NA 0.1722933 0.1722933 -0.1722933
## 10 11 NA 0.1920067 0.1920067 -0.1920067
## 11 12 NA 0.2006333 0.2006333 -0.2006333
## 12 13 NA 0.1725900 0.1725900 -0.1725900
## 13 14 NA 0.1910633 0.1910633 -0.1910633
## 14 15 NA 0.1806333 0.1806333 -0.1806333
## 15 16 NA 0.1758233 0.1758233 -0.1758233
## 16 17 NA 0.1815533 0.1815533 -0.1815533
## 17 18 NA 0.2010400 0.2010400 -0.2010400
## 18 19 NA 0.2041133 0.2041133 -0.2041133
## 19 20 NA 0.1793733 0.1793733 -0.1793733
results[nrow(results) + 1,] = c("Decision Tree", 0.6722296,
0.09708413, 0.07104201, -.001760987)
xgb_model <- train(
PH~.,
data = train,
method = "xgbTree",
na.action=na.omit,
trControl = trainControl(method = "cv"),
tuneGrid = expand.grid(
#setting parameters for run
nrounds = c(25,50,75,100),
max_depth = 7:9,
eta = c(0.1,0.2,0.3),
gamma = c(0.005,0.01,0.02,0.03),
colsample_bytree = 1,
min_child_weight = 1,
subsample = 1
)
)
## [23:52:54] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:54] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:54] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:54] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:54] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:54] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:54] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:54] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:54] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:54] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:54] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:54] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:55] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:56] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:57] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:58] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:52:59] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:00] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:01] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:02] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:03] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:04] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:05] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:06] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:07] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:07] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
## [23:53:07] WARNING: src/c_api/c_api.cc:935: `ntree_limit` is deprecated, use `iteration_range` instead.
xgb_model
## eXtreme Gradient Boosting
##
## 5 samples
## 18 predictors
##
## No pre-processing
## Resampling: Cross-Validated (10 fold)
## Summary of sample sizes: 4, 4, 4, 4, 4
## Resampling results across tuning parameters:
##
## eta max_depth gamma nrounds RMSE Rsquared MAE
## 0.1 7 0.005 25 0.9854630 NaN 0.9854630
## 0.1 7 0.005 50 0.2178609 NaN 0.2178609
## 0.1 7 0.005 75 0.2471303 NaN 0.2471303
## 0.1 7 0.005 100 0.2595706 NaN 0.2595706
## 0.1 7 0.010 25 0.9854630 NaN 0.9854630
## 0.1 7 0.010 50 0.2163811 NaN 0.2163811
## 0.1 7 0.010 75 0.2472060 NaN 0.2472060
## 0.1 7 0.010 100 0.2567731 NaN 0.2567731
## 0.1 7 0.020 25 0.9854630 NaN 0.9854630
## 0.1 7 0.020 50 0.2124710 NaN 0.2124710
## 0.1 7 0.020 75 0.2470092 NaN 0.2470092
## 0.1 7 0.020 100 0.2548230 NaN 0.2548230
## 0.1 7 0.030 25 0.9854630 NaN 0.9854630
## 0.1 7 0.030 50 0.2066170 NaN 0.2066170
## 0.1 7 0.030 75 0.2429925 NaN 0.2429925
## 0.1 7 0.030 100 0.2583520 NaN 0.2583520
## 0.1 8 0.005 25 0.9854630 NaN 0.9854630
## 0.1 8 0.005 50 0.2178609 NaN 0.2178609
## 0.1 8 0.005 75 0.2471303 NaN 0.2471303
## 0.1 8 0.005 100 0.2595706 NaN 0.2595706
## 0.1 8 0.010 25 0.9854630 NaN 0.9854630
## 0.1 8 0.010 50 0.2163811 NaN 0.2163811
## 0.1 8 0.010 75 0.2472060 NaN 0.2472060
## 0.1 8 0.010 100 0.2567731 NaN 0.2567731
## 0.1 8 0.020 25 0.9854630 NaN 0.9854630
## 0.1 8 0.020 50 0.2124710 NaN 0.2124710
## 0.1 8 0.020 75 0.2470092 NaN 0.2470092
## 0.1 8 0.020 100 0.2548230 NaN 0.2548230
## 0.1 8 0.030 25 0.9854630 NaN 0.9854630
## 0.1 8 0.030 50 0.2066170 NaN 0.2066170
## 0.1 8 0.030 75 0.2429925 NaN 0.2429925
## 0.1 8 0.030 100 0.2583520 NaN 0.2583520
## 0.1 9 0.005 25 0.9854630 NaN 0.9854630
## 0.1 9 0.005 50 0.2178609 NaN 0.2178609
## 0.1 9 0.005 75 0.2471303 NaN 0.2471303
## 0.1 9 0.005 100 0.2595706 NaN 0.2595706
## 0.1 9 0.010 25 0.9854630 NaN 0.9854630
## 0.1 9 0.010 50 0.2163811 NaN 0.2163811
## 0.1 9 0.010 75 0.2472060 NaN 0.2472060
## 0.1 9 0.010 100 0.2567731 NaN 0.2567731
## 0.1 9 0.020 25 0.9854630 NaN 0.9854630
## 0.1 9 0.020 50 0.2124710 NaN 0.2124710
## 0.1 9 0.020 75 0.2470092 NaN 0.2470092
## 0.1 9 0.020 100 0.2548230 NaN 0.2548230
## 0.1 9 0.030 25 0.9854630 NaN 0.9854630
## 0.1 9 0.030 50 0.2066170 NaN 0.2066170
## 0.1 9 0.030 75 0.2429925 NaN 0.2429925
## 0.1 9 0.030 100 0.2583520 NaN 0.2583520
## 0.2 7 0.005 25 0.2216528 NaN 0.2216528
## 0.2 7 0.005 50 0.2555747 NaN 0.2555747
## 0.2 7 0.005 75 0.2561185 NaN 0.2561185
## 0.2 7 0.005 100 0.2561377 NaN 0.2561377
## 0.2 7 0.010 25 0.2134641 NaN 0.2134641
## 0.2 7 0.010 50 0.2589158 NaN 0.2589158
## 0.2 7 0.010 75 0.2599068 NaN 0.2599068
## 0.2 7 0.010 100 0.2599192 NaN 0.2599192
## 0.2 7 0.020 25 0.2114487 NaN 0.2114487
## 0.2 7 0.020 50 0.2560019 NaN 0.2560019
## 0.2 7 0.020 75 0.2559825 NaN 0.2559825
## 0.2 7 0.020 100 0.2560394 NaN 0.2560394
## 0.2 7 0.030 25 0.2033812 NaN 0.2033812
## 0.2 7 0.030 50 0.2586120 NaN 0.2586120
## 0.2 7 0.030 75 0.2601833 NaN 0.2601833
## 0.2 7 0.030 100 0.2602022 NaN 0.2602022
## 0.2 8 0.005 25 0.2216528 NaN 0.2216528
## 0.2 8 0.005 50 0.2555747 NaN 0.2555747
## 0.2 8 0.005 75 0.2561185 NaN 0.2561185
## 0.2 8 0.005 100 0.2561377 NaN 0.2561377
## 0.2 8 0.010 25 0.2134641 NaN 0.2134641
## 0.2 8 0.010 50 0.2589158 NaN 0.2589158
## 0.2 8 0.010 75 0.2599068 NaN 0.2599068
## 0.2 8 0.010 100 0.2599192 NaN 0.2599192
## 0.2 8 0.020 25 0.2114487 NaN 0.2114487
## 0.2 8 0.020 50 0.2560019 NaN 0.2560019
## 0.2 8 0.020 75 0.2559825 NaN 0.2559825
## 0.2 8 0.020 100 0.2560394 NaN 0.2560394
## 0.2 8 0.030 25 0.2033812 NaN 0.2033812
## 0.2 8 0.030 50 0.2586120 NaN 0.2586120
## 0.2 8 0.030 75 0.2601833 NaN 0.2601833
## 0.2 8 0.030 100 0.2602022 NaN 0.2602022
## 0.2 9 0.005 25 0.2216528 NaN 0.2216528
## 0.2 9 0.005 50 0.2555747 NaN 0.2555747
## 0.2 9 0.005 75 0.2561185 NaN 0.2561185
## 0.2 9 0.005 100 0.2561377 NaN 0.2561377
## 0.2 9 0.010 25 0.2134641 NaN 0.2134641
## 0.2 9 0.010 50 0.2589158 NaN 0.2589158
## 0.2 9 0.010 75 0.2599068 NaN 0.2599068
## 0.2 9 0.010 100 0.2599192 NaN 0.2599192
## 0.2 9 0.020 25 0.2114487 NaN 0.2114487
## 0.2 9 0.020 50 0.2560019 NaN 0.2560019
## 0.2 9 0.020 75 0.2559825 NaN 0.2559825
## 0.2 9 0.020 100 0.2560394 NaN 0.2560394
## 0.2 9 0.030 25 0.2033812 NaN 0.2033812
## 0.2 9 0.030 50 0.2586120 NaN 0.2586120
## 0.2 9 0.030 75 0.2601833 NaN 0.2601833
## 0.2 9 0.030 100 0.2602022 NaN 0.2602022
## 0.3 7 0.005 25 0.2458925 NaN 0.2458925
## 0.3 7 0.005 50 0.2550360 NaN 0.2550360
## 0.3 7 0.005 75 0.2550458 NaN 0.2550458
## 0.3 7 0.005 100 0.2550458 NaN 0.2550458
## 0.3 7 0.010 25 0.2446711 NaN 0.2446711
## 0.3 7 0.010 50 0.2546931 NaN 0.2546931
## 0.3 7 0.010 75 0.2546990 NaN 0.2546990
## 0.3 7 0.010 100 0.2546990 NaN 0.2546990
## 0.3 7 0.020 25 0.2523719 NaN 0.2523719
## 0.3 7 0.020 50 0.2576072 NaN 0.2576072
## 0.3 7 0.020 75 0.2576121 NaN 0.2576121
## 0.3 7 0.020 100 0.2576121 NaN 0.2576121
## 0.3 7 0.030 25 0.2497989 NaN 0.2497989
## 0.3 7 0.030 50 0.2551269 NaN 0.2551269
## 0.3 7 0.030 75 0.2551372 NaN 0.2551372
## 0.3 7 0.030 100 0.2551372 NaN 0.2551372
## 0.3 8 0.005 25 0.2458925 NaN 0.2458925
## 0.3 8 0.005 50 0.2550360 NaN 0.2550360
## 0.3 8 0.005 75 0.2550458 NaN 0.2550458
## 0.3 8 0.005 100 0.2550458 NaN 0.2550458
## 0.3 8 0.010 25 0.2446711 NaN 0.2446711
## 0.3 8 0.010 50 0.2546931 NaN 0.2546931
## 0.3 8 0.010 75 0.2546990 NaN 0.2546990
## 0.3 8 0.010 100 0.2546990 NaN 0.2546990
## 0.3 8 0.020 25 0.2523719 NaN 0.2523719
## 0.3 8 0.020 50 0.2576072 NaN 0.2576072
## 0.3 8 0.020 75 0.2576121 NaN 0.2576121
## 0.3 8 0.020 100 0.2576121 NaN 0.2576121
## 0.3 8 0.030 25 0.2497989 NaN 0.2497989
## 0.3 8 0.030 50 0.2551269 NaN 0.2551269
## 0.3 8 0.030 75 0.2551372 NaN 0.2551372
## 0.3 8 0.030 100 0.2551372 NaN 0.2551372
## 0.3 9 0.005 25 0.2458925 NaN 0.2458925
## 0.3 9 0.005 50 0.2550360 NaN 0.2550360
## 0.3 9 0.005 75 0.2550458 NaN 0.2550458
## 0.3 9 0.005 100 0.2550458 NaN 0.2550458
## 0.3 9 0.010 25 0.2446711 NaN 0.2446711
## 0.3 9 0.010 50 0.2546931 NaN 0.2546931
## 0.3 9 0.010 75 0.2546990 NaN 0.2546990
## 0.3 9 0.010 100 0.2546990 NaN 0.2546990
## 0.3 9 0.020 25 0.2523719 NaN 0.2523719
## 0.3 9 0.020 50 0.2576072 NaN 0.2576072
## 0.3 9 0.020 75 0.2576121 NaN 0.2576121
## 0.3 9 0.020 100 0.2576121 NaN 0.2576121
## 0.3 9 0.030 25 0.2497989 NaN 0.2497989
## 0.3 9 0.030 50 0.2551269 NaN 0.2551269
## 0.3 9 0.030 75 0.2551372 NaN 0.2551372
## 0.3 9 0.030 100 0.2551372 NaN 0.2551372
##
## Tuning parameter 'colsample_bytree' was held constant at a value of 1
##
## Tuning parameter 'min_child_weight' was held constant at a value of 1
##
## Tuning parameter 'subsample' was held constant at a value of 1
## RMSE was used to select the optimal model using the smallest value.
## The final values used for the model were nrounds = 25, max_depth = 7, eta
## = 0.2, gamma = 0.03, colsample_bytree = 1, min_child_weight = 1 and
## subsample = 1.
results <- metrics(results, "Gradient boost", xgb_model)
rad_model <- best.tune(
svm,
PH~.,
data = train,
ranges = list(
gamma = c(0.05,0.1,0.2),
cost = c(1,2,3,4)
),
kernel = 'radial',
tunecontrol = tune.control(sampling = "fix")
)
rad_model
##
## Call:
## best.tune(svm, PH ~ ., data = train, ranges = list(gamma = c(0.05,
## 0.1, 0.2), cost = c(1, 2, 3, 4)), kernel = "radial", tunecontrol = tune.control(sampling = "fix"))
##
##
## Parameters:
## SVM-Type: eps-regression
## SVM-Kernel: radial
## cost: 1
## gamma: 0.05
## epsilon: 0.1
##
##
## Number of Support Vectors: 5
results <- metrics(results, "SVM radial", rad_model)
lin_model <- best.tune(
svm,
PH~.,
data = train,
ranges = list(
gamma = c(0.05,0.1,0.2),
cost = c(1,2,3,4)
),
kernel = 'linear',
tunecontrol = tune.control(sampling = "fix")
)
lin_model
##
## Call:
## best.tune(svm, PH ~ ., data = train, ranges = list(gamma = c(0.05,
## 0.1, 0.2), cost = c(1, 2, 3, 4)), kernel = "linear", tunecontrol = tune.control(sampling = "fix"))
##
##
## Parameters:
## SVM-Type: eps-regression
## SVM-Kernel: linear
## cost: 1
## gamma: 0.05
## epsilon: 0.1
##
##
## Number of Support Vectors: 5
results <- metrics(results, "SVM linear", lin_model)
poly_model <- best.tune(
svm,
PH~.,
data = train,
ranges = list(
gamma = c(0.05,0.1,0.2),
cost = c(1,2,3,4)
),
kernel = 'polynomial',
tunecontrol = tune.control(sampling = "fix")
)
poly_model
##
## Call:
## best.tune(svm, PH ~ ., data = train, ranges = list(gamma = c(0.05,
## 0.1, 0.2), cost = c(1, 2, 3, 4)), kernel = "polynomial", tunecontrol = tune.control(sampling = "fix"))
##
##
## Parameters:
## SVM-Type: eps-regression
## SVM-Kernel: polynomial
## cost: 1
## degree: 3
## gamma: 0.05
## coef.0: 0
## epsilon: 0.1
##
##
## Number of Support Vectors: 4
results <- metrics(results, "SVM polynomial", poly_model)
sig_model <- best.tune(
svm,
PH~.,
data = train,
ranges = list(
gamma = c(0.05,0.1,0.2),
cost = c(1,2,3,4)
),
kernel = 'sigmoid',
tunecontrol = tune.control(sampling = "fix")
)
sig_model
##
## Call:
## best.tune(svm, PH ~ ., data = train, ranges = list(gamma = c(0.05,
## 0.1, 0.2), cost = c(1, 2, 3, 4)), kernel = "sigmoid", tunecontrol = tune.control(sampling = "fix"))
##
##
## Parameters:
## SVM-Type: eps-regression
## SVM-Kernel: sigmoid
## cost: 1
## gamma: 0.05
## coef.0: 0
## epsilon: 0.1
##
##
## Number of Support Vectors: 5
results <- metrics(results, "SVM sigmoid", sig_model)
nnetFit <- avNNet(
PH~.,
data = train,
size = 5,
decay = 0.01,
linout = TRUE,
## Reduce the amount of printed output
trace = FALSE,
## Expand the number of iterations to find
## parameter estimates..
maxit = 500,
## and the number of parameters used by the model
MaxNWts = 5 * (ncol(train)) + 5 + 1
)
results <- metrics(results, "avNNet", nnetFit)
marsModel <- train(
PH~.,
data= train,
method = "earth",
tuneGrid = expand.grid(.degree = 1:2, .nprune = 2:38),
trControl = trainControl(method = "cv")
)
marsModel
## Multivariate Adaptive Regression Spline
##
## 5 samples
## 18 predictors
##
## No pre-processing
## Resampling: Cross-Validated (10 fold)
## Summary of sample sizes: 4, 4, 4, 4, 4
## Resampling results across tuning parameters:
##
## degree nprune RMSE Rsquared MAE
## 1 2 0.258 NaN 0.258
## 1 3 0.258 NaN 0.258
## 1 4 0.258 NaN 0.258
## 1 5 0.258 NaN 0.258
## 1 6 0.258 NaN 0.258
## 1 7 0.258 NaN 0.258
## 1 8 0.258 NaN 0.258
## 1 9 0.258 NaN 0.258
## 1 10 0.258 NaN 0.258
## 1 11 0.258 NaN 0.258
## 1 12 0.258 NaN 0.258
## 1 13 0.258 NaN 0.258
## 1 14 0.258 NaN 0.258
## 1 15 0.258 NaN 0.258
## 1 16 0.258 NaN 0.258
## 1 17 0.258 NaN 0.258
## 1 18 0.258 NaN 0.258
## 1 19 0.258 NaN 0.258
## 1 20 0.258 NaN 0.258
## 1 21 0.258 NaN 0.258
## 1 22 0.258 NaN 0.258
## 1 23 0.258 NaN 0.258
## 1 24 0.258 NaN 0.258
## 1 25 0.258 NaN 0.258
## 1 26 0.258 NaN 0.258
## 1 27 0.258 NaN 0.258
## 1 28 0.258 NaN 0.258
## 1 29 0.258 NaN 0.258
## 1 30 0.258 NaN 0.258
## 1 31 0.258 NaN 0.258
## 1 32 0.258 NaN 0.258
## 1 33 0.258 NaN 0.258
## 1 34 0.258 NaN 0.258
## 1 35 0.258 NaN 0.258
## 1 36 0.258 NaN 0.258
## 1 37 0.258 NaN 0.258
## 1 38 0.258 NaN 0.258
## 2 2 0.258 NaN 0.258
## 2 3 0.258 NaN 0.258
## 2 4 0.258 NaN 0.258
## 2 5 0.258 NaN 0.258
## 2 6 0.258 NaN 0.258
## 2 7 0.258 NaN 0.258
## 2 8 0.258 NaN 0.258
## 2 9 0.258 NaN 0.258
## 2 10 0.258 NaN 0.258
## 2 11 0.258 NaN 0.258
## 2 12 0.258 NaN 0.258
## 2 13 0.258 NaN 0.258
## 2 14 0.258 NaN 0.258
## 2 15 0.258 NaN 0.258
## 2 16 0.258 NaN 0.258
## 2 17 0.258 NaN 0.258
## 2 18 0.258 NaN 0.258
## 2 19 0.258 NaN 0.258
## 2 20 0.258 NaN 0.258
## 2 21 0.258 NaN 0.258
## 2 22 0.258 NaN 0.258
## 2 23 0.258 NaN 0.258
## 2 24 0.258 NaN 0.258
## 2 25 0.258 NaN 0.258
## 2 26 0.258 NaN 0.258
## 2 27 0.258 NaN 0.258
## 2 28 0.258 NaN 0.258
## 2 29 0.258 NaN 0.258
## 2 30 0.258 NaN 0.258
## 2 31 0.258 NaN 0.258
## 2 32 0.258 NaN 0.258
## 2 33 0.258 NaN 0.258
## 2 34 0.258 NaN 0.258
## 2 35 0.258 NaN 0.258
## 2 36 0.258 NaN 0.258
## 2 37 0.258 NaN 0.258
## 2 38 0.258 NaN 0.258
##
## RMSE was used to select the optimal model using the smallest value.
## The final values used for the model were nprune = 2 and degree = 1.
results <- metrics(results, "MARS Tuned", marsModel)
knnModel <- train(
PH~.,
data= train,
method = "knn",
preProc = c("center", "scale"),
tuneGrid = data.frame(.k = 1:30),
trControl = trainControl(method = "cv"))
knnModel
## k-Nearest Neighbors
##
## 5 samples
## 18 predictors
##
## Pre-processing: centered (18), scaled (18)
## Resampling: Cross-Validated (10 fold)
## Summary of sample sizes: 4, 4, 4, 4, 4
## Resampling results across tuning parameters:
##
## k RMSE Rsquared MAE
## 1 0.280 NaN 0.280
## 2 0.272 NaN 0.272
## 3 0.248 NaN 0.248
## 4 0.258 NaN 0.258
## 5 0.258 NaN 0.258
## 6 0.258 NaN 0.258
## 7 0.258 NaN 0.258
## 8 0.258 NaN 0.258
## 9 0.258 NaN 0.258
## 10 0.258 NaN 0.258
## 11 0.258 NaN 0.258
## 12 0.258 NaN 0.258
## 13 0.258 NaN 0.258
## 14 0.258 NaN 0.258
## 15 0.258 NaN 0.258
## 16 0.258 NaN 0.258
## 17 0.258 NaN 0.258
## 18 0.258 NaN 0.258
## 19 0.258 NaN 0.258
## 20 0.258 NaN 0.258
## 21 0.258 NaN 0.258
## 22 0.258 NaN 0.258
## 23 0.258 NaN 0.258
## 24 0.258 NaN 0.258
## 25 0.258 NaN 0.258
## 26 0.258 NaN 0.258
## 27 0.258 NaN 0.258
## 28 0.258 NaN 0.258
## 29 0.258 NaN 0.258
## 30 0.258 NaN 0.258
##
## RMSE was used to select the optimal model using the smallest value.
## The final value used for the model was k = 3.
results <- metrics(results, "KNN Tuned", knnModel)
cubistModel <- train(
PH~.,
data = train,
method = "cubist",
trControl = trainControl(method = "cv")
)
cubistModel
## Cubist
##
## 5 samples
## 18 predictors
##
## No pre-processing
## Resampling: Cross-Validated (10 fold)
## Summary of sample sizes: 4, 4, 4, 4, 4
## Resampling results across tuning parameters:
##
## committees neighbors RMSE Rsquared MAE
## 1 0 0.1839999 NaN 0.1839999
## 1 5 0.1839999 NaN 0.1839999
## 1 9 0.1839999 NaN 0.1839999
## 10 0 0.1839999 NaN 0.1839999
## 10 5 0.1820952 NaN 0.1820952
## 10 9 0.1839999 NaN 0.1839999
## 20 0 0.1839999 NaN 0.1839999
## 20 5 0.1839999 NaN 0.1839999
## 20 9 0.1839999 NaN 0.1839999
##
## RMSE was used to select the optimal model using the smallest value.
## The final values used for the model were committees = 10 and neighbors = 5.
results <- metrics(results, "Cubist", cubistModel)
results |> arrange(desc(R2))
## Kernel R2 RMSE MAE
## 1 Decision Tree 0.6722296 0.09708413 0.07104201
## 2 Decision Tree 0.5131047 0.1202118 0.08532186
## 3 Gradient boost <NA> 0.0194337463378904 0.0194337463378904
## 4 SVM radial <NA> 0.138393028949762 0.138393028949762
## 5 SVM linear <NA> 0.107750991897039 0.107750991897039
## 6 SVM polynomial <NA> 0.101827627232877 0.101827627232877
## 7 SVM sigmoid <NA> 0.106860802822434 0.106860802822434
## 8 avNNet <NA> 0.997706053986188 0.997706053986188
## 9 MARS Tuned <NA> 0.164 0.164
## 10 KNN Tuned <NA> 0.279999999999999 0.279999999999999
## 11 Cubist <NA> 0.059999694824219 0.059999694824219
## Bias
## 1 -0.001760987
## 2 -0.00712643
## 3 0.0194337463378904
## 4 -0.138393028949762
## 5 -0.107750991897039
## 6 -0.101827627232877
## 7 -0.106860802822434
## 8 0.997706053986188
## 9 -0.164
## 10 -0.279999999999999
## 11 -0.059999694824219
Now for the moment of truth I preprocess the data like I did before and plug it in the model to predict and then write that to an excel file for giving to the higher ups. Hopefully this is sufficient to ensure we stay within regulations!
evaluation <- eval |>
mutate(
`Brand Code` = case_when(
`Brand Code` == "A" ~ 1,
`Brand Code` == "B" ~ 2,
`Brand Code` == "C" ~ 3,
`Brand Code` == "D" ~ 4,
is.na(`Brand Code`) ~ 0,
)
) |>
remove_hc()
final_pred <- predict(cubistModel, evaluation)
evaluation$PH <- final_pred
print(head(evaluation))
## Brand Code Carb Volume Fill Ounces PC Volume Carb Pressure PSC PSC Fill
## 1 4 5.480000 24.03333 0.2700000 65.4 0.236 0.40
## 2 1 5.393333 23.95333 0.2266667 63.2 0.042 0.22
## 3 2 5.293333 23.92000 0.3033333 66.4 0.068 0.10
## 4 2 5.266667 23.94000 0.1860000 64.8 0.004 0.20
## 5 2 5.406667 24.20000 0.1600000 69.4 0.040 0.30
## 6 2 5.286667 24.10667 0.2120000 73.4 0.078 0.22
## PSC CO2 Mnf Flow Carb Pressure1 Hyd Pressure1 Hyd Pressure2 Hyd Pressure3
## 1 0.04 -100 116.6 0 26.8 27.7
## 2 0.08 -100 118.8 0 0.0 0.0
## 3 0.02 -100 120.2 0 0.0 0.0
## 4 0.02 -100 124.8 0 0.0 0.0
## 5 0.06 -100 115.0 0 0.0 0.0
## 6 0.04 -100 118.6 0 0.0 0.0
## Hyd Pressure4 Filler Speed Temperature Usage cont Carb Flow Pressure Vacuum
## 1 96 3986 66.0 21.66 2950 -3.8
## 2 112 4012 65.6 17.60 2916 -4.4
## 3 98 4010 65.6 24.18 3056 -4.2
## 4 132 3978 74.4 18.12 28 -4.0
## 5 94 4018 66.4 21.32 3214 -4.0
## 6 94 4010 66.6 18.00 3064 -3.8
## Oxygen Filler Bowl Setpoint Pressure Setpoint Air Pressurer PH
## 1 0.0220 130 45.2 142.6 8.320000
## 2 0.0300 120 46.0 147.2 8.290378
## 3 0.0460 120 46.0 146.6 8.320000
## 4 0.0337 120 46.0 146.4 8.320000
## 5 0.0820 120 50.0 145.8 8.320000
## 6 0.0640 120 46.0 146.0 8.320000
write.csv(evaluation, "prediction.csv")
write.csv(results, "results.csv")