`Compboost_internal.Rd`

This class collects all parts such as the factory list or the used logger
and passes them to `C++`

. On the `C++`

side is then the main
algorithm.

`S4`

object.

Compboost$new(response, learning_rate, stop_if_all_stopper_fulfilled, factory_list, loss, logger_list, optimizer)

`response`

[`numeric`

]Vector of the true values which should be modeled.

`learning_rate`

[`numeric(1)`

]The learning rate which is used to shrink the parameter in each iteration.

`stop_if_all_stopper_fulfilled`

[`logical(1)`

]Boolean to indicate which stopping strategy is used. If

`TRUE`

then the algorithm stops if all registered logger stopper are fulfilled.`factory_list`

[`BlearnerFactoryList`

object]List of base-learner factories from which one base-learner is selected in each iteration by using the

`loss`

[`Loss`

object]The loss which should be used to calculate the pseudo residuals in each iteration.

`logger_list`

[`LoggerList`

object]The list with all registered logger which are used to track the algorithm.

`optimizer`

[`Optimizer`

object]The optimizer which is used to select in each iteration one good base-learner.

This class doesn't contain public fields.

`train(trace)`

Initial training of the model. The integer argument

`trace`

indicates if the logger progress should be printed or not and if so trace indicates which iterations should be printed.`continueTraining(trace, logger_list)`

Continue the training by using an additional

`logger_list`

. The retraining is stopped if the first logger says that the algorithm should be stopped.`getPrediction()`

Get the inbag prediction which is done during the fitting process.

`getSelectedBaselearner()`

Returns a character vector of how the base-learner are selected.

`getLoggerData()`

Returns a list of all logged data. If the algorithm is retrained, then the list contains for each training one element.

`getEstimatedParameter()`

Returns a list with the estimated parameter for base-learner which was selected at least once.

`getParameterAtIteration(k)`

Calculates the prediction at the iteration

`k`

.`getParameterMatrix()`

Calculates a matrix where row

`i`

includes the parameter at iteration`i`

. There are as many rows as done iterations.`isTrained()`

This function returns just a boolean value which indicates if the initial training was already done.

`predict(newdata)`

Prediction on new data organized within a list of source data objects. It is important that the names of the source data objects matches those one that were used to define the factories.

`predictAtIteration(newdata, k)`

Prediction on new data by using another iteration

`k`

.`setToIteration(k)`

Set the whole model to another iteration

`k`

. After calling this function all other elements such as the parameters or the prediction are calculated corresponding to`k`

.`summarizeCompboost()`

Summarize the

`Compboost`

object.

# Some data: df = mtcars df$mpg_cat = ifelse(df$mpg > 20, "high", "low") # # Create new variable to check the polynomial base-learner with degree 2: # df$hp2 = df[["hp"]]^2 # Data for the baselearner are matrices: X_hp = as.matrix(df[["hp"]]) X_wt = as.matrix(df[["wt"]]) # Target variable: response = ResponseBinaryClassif$new("mpg_cat", "high", df[["mpg_cat"]]) data_source_hp = InMemoryData$new(X_hp, "hp") data_source_wt = InMemoryData$new(X_wt, "wt") data_target_hp1 = InMemoryData$new() data_target_hp2 = InMemoryData$new() data_target_wt1 = InMemoryData$new() data_target_wt2 = InMemoryData$new() # List for oob logging: oob_data = list(data_source_hp, data_source_wt) # List to test prediction on newdata: test_data = oob_data # Factories: linear_factory_hp = BaselearnerPolynomial$new(data_source_hp, data_target_hp1, list(degree = 1, intercept = TRUE)) linear_factory_wt = BaselearnerPolynomial$new(data_source_wt, data_target_wt1, list(degree = 1, intercept = TRUE)) quadratic_factory_hp = BaselearnerPolynomial$new(data_source_hp, data_target_hp2, list(degree = 2, intercept = TRUE)) spline_factory_wt = BaselearnerPSpline$new(data_source_wt, data_target_wt2, list(degree = 3, n_knots = 10, penalty = 2, differences = 2)) # Create new factory list: factory_list = BlearnerFactoryList$new() # Register factories: factory_list$registerFactory(linear_factory_hp) factory_list$registerFactory(linear_factory_wt) factory_list$registerFactory(quadratic_factory_hp) factory_list$registerFactory(spline_factory_wt) # Define loss: loss_bin = LossBinomial$new() # Define optimizer: optimizer = OptimizerCoordinateDescent$new() ## Logger # Define logger. We want just the iterations as stopper but also track the # time, inbag risk and oob risk: log_iterations = LoggerIteration$new(" iteration_logger", TRUE, 500) log_time = LoggerTime$new("time_logger", FALSE, 500, "microseconds") # Define new logger list: logger_list = LoggerList$new() # Register the logger: logger_list$registerLogger(log_iterations) logger_list$registerLogger(log_time) # Run compboost: # -------------- # Initialize object: cboost = Compboost_internal$new( response = response, learning_rate = 0.05, stop_if_all_stopper_fulfilled = FALSE, factory_list = factory_list, loss = loss_bin, logger_list = logger_list, optimizer = optimizer ) # Train the model (we want to print the trace): cboost$train(trace = 50)#> 1/500 risk = 0.85 time_logger = 0 #> 50/500 risk = 0.65 time_logger = 701 #> 100/500 risk = 0.59 time_logger = 1430 #> 150/500 risk = 0.57 time_logger = 2244 #> 200/500 risk = 0.55 time_logger = 3069 #> 250/500 risk = 0.54 time_logger = 4231 #> 300/500 risk = 0.54 time_logger = 5141 #> 350/500 risk = 0.53 time_logger = 6129 #> 400/500 risk = 0.53 time_logger = 7148 #> 450/500 risk = 0.52 time_logger = 8219 #> 500/500 risk = 0.52 time_logger = 9401 #> #> #> Train 500 iterations in 0 Seconds. #> Final risk based on the train set: 0.52 #>cboost#> #> Compboost object with: #> - Learning Rate: 0.05 #> - Are all logger used as stopper: 0 #> - Model is already trained with 500 iterations/fitted baselearner #> - Actual state is at iteration 500 #> #> #># Get estimated parameter: cboost$getEstimatedParameter()#> $hp_polynomial_degree_1 #> [,1] #> [1,] 3.81417589 #> [2,] -0.02830336 #> #> $wt_spline_degree_3 #> [,1] #> [1,] 2.5653709 #> [2,] 2.4825132 #> [3,] 2.4183456 #> [4,] 2.3189660 #> [5,] 1.9036658 #> [6,] 1.2294512 #> [7,] -0.6480499 #> [8,] -2.7060605 #> [9,] -3.0503981 #> [10,] -2.9465736 #> [11,] -2.6650968 #> [12,] -2.2798386 #> [13,] -1.8629273 #> [14,] -1.4484672 #># Get trace of selected base-learner: cboost$getSelectedBaselearner()#> [1] "wt_spline_degree_3" "wt_spline_degree_3" "wt_spline_degree_3" #> [4] "wt_spline_degree_3" "wt_spline_degree_3" "wt_spline_degree_3" #> [7] "wt_spline_degree_3" "wt_spline_degree_3" "wt_spline_degree_3" #> [10] "wt_spline_degree_3" "wt_spline_degree_3" "wt_spline_degree_3" #> [13] "wt_spline_degree_3" "wt_spline_degree_3" "wt_spline_degree_3" #> [16] "wt_spline_degree_3" "wt_spline_degree_3" "wt_spline_degree_3" #> [19] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [22] "hp_polynomial_degree_1" "wt_spline_degree_3" "wt_spline_degree_3" #> [25] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [28] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [31] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [34] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [37] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [40] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [43] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [46] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [49] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [52] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [55] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [58] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [61] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [64] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [67] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [70] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [73] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [76] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [79] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [82] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [85] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [88] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [91] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [94] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [97] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [100] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [103] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [106] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [109] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [112] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [115] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [118] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [121] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [124] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [127] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [130] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [133] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [136] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [139] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [142] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [145] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [148] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [151] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [154] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [157] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [160] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [163] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [166] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [169] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [172] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [175] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [178] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [181] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [184] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [187] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [190] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [193] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [196] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [199] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [202] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [205] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [208] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [211] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [214] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [217] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [220] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [223] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [226] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [229] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [232] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [235] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [238] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [241] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [244] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [247] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [250] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [253] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [256] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [259] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [262] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [265] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [268] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [271] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [274] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [277] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [280] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [283] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [286] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [289] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [292] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [295] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [298] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [301] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [304] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [307] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [310] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [313] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [316] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [319] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [322] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [325] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [328] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [331] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [334] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [337] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [340] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [343] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [346] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [349] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [352] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [355] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [358] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [361] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [364] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [367] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [370] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [373] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [376] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [379] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [382] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [385] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [388] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [391] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [394] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [397] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [400] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [403] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [406] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [409] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [412] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [415] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [418] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [421] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [424] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [427] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [430] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [433] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [436] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [439] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [442] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [445] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [448] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [451] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [454] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [457] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [460] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [463] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [466] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [469] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [472] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [475] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [478] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [481] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [484] "hp_polynomial_degree_1" "wt_spline_degree_3" "hp_polynomial_degree_1" #> [487] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [490] "wt_spline_degree_3" "hp_polynomial_degree_1" "hp_polynomial_degree_1" #> [493] "wt_spline_degree_3" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [496] "hp_polynomial_degree_1" "hp_polynomial_degree_1" "wt_spline_degree_3" #> [499] "hp_polynomial_degree_1" "wt_spline_degree_3"# Set to iteration 200: cboost$setToIteration(200, 30) # Get new parameter values: cboost$getEstimatedParameter()#> $hp_polynomial_degree_1 #> [,1] #> [1,] 2.29508314 #> [2,] -0.01661026 #> #> $wt_spline_degree_3 #> [,1] #> [1,] 1.9967447 #> [2,] 2.0017386 #> [3,] 2.0103429 #> [4,] 1.9579544 #> [5,] 1.6256718 #> [6,] 0.9573298 #> [7,] -0.4864737 #> [8,] -1.9596113 #> [9,] -2.3410777 #> [10,] -2.3535180 #> [11,] -2.1908784 #> [12,] -1.9243225 #> [13,] -1.6234776 #> [14,] -1.3232280 #>