View source: R/raster_predict_funs.R
scale_prediction_rasters | R Documentation |
Center and scale the prediction raster stack to the parameters of the training data used to fit a model
scale_prediction_rasters(pred_var_stack, params, verbose = 1)
pred_var_stack |
[raster stack] stack of input landscape rasters for prediction |
params |
[list] list of mean and standard deviation parameters returned from formatting data. (See example below) |
verbose |
[integer] a value of '1' to print out the landscape variable name as it is being normalized. |
'scale_prediction_rasters()' - Function scales your predictor rater stack based on the params list created in the model fitting process. This script simply loops over the rasters in the stack and centers and scales based on mean and sd of the training data used to fit the klr model. The function outputs a raster stack.
[raster stack] a stack of the prediction rasters scaled to the the input training parameters.
## Not run: ### Create param list params <- list(train_data = train_data, alphas_pred = train_log_pred[["alphas"]], sigma = sigma, lambda = lambda, means = formatted_data$means, sds = formatted_data$sds) ### width and hieght of roving focal window (required) ngb = 5 ### Number of rows and columns in prediction rasters ## needed for making simulated rasters, as well as for predicting real-world rasters cols = 100 rows = 100 ### Create simulated environmental rasters (sim data only) #### s_var1r <- NLMR::nlm_gaussianfield(cols,rows, autocorr_range = 20) s_var1 <- rescale_sim_raster(s_var1r, 50, 10) s_var2 <- rescale_sim_raster(s_var1r, 3, 2) b_var1r <- NLMR::nlm_gaussianfield(cols,rows,autocorr_range = 20) b_var1 <- rescale_sim_raster(b_var1r, 100, 20) b_var2 <- rescale_sim_raster(b_var1r, 6, 3) ### Create a site-present trend surface (sim data only) trend_coords <- sim_trend(cols, rows, n = 3) coords <- trend_coords$coords trend <- trend_coords$trend inv_trend <- abs(1-trend) var1 <- (s_var1 * trend) + (b_var1 * inv_trend) var2 <- (s_var2 * trend) + (b_var2 * inv_trend) #### end simulated data creation #### ### Create raster stack of predictor variables pred_var_stack <- raster::stack(var1, var2) names(pred_var_stack) <- c("var1","var2") ### scale rasters to training data pred_var_stack_scaled <- scale_prediction_rasters(pred_var_stack, params, verbose = 0) ### Predict raster (single chunk, not in parallel) pred_rast <- KLR_raster_predict(pred_var_stack_scaled, ngb = ngb, params, split = FALSE, ppside = NULL, progress = FALSE, parallel = FALSE) ## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.