| predict.grf {SpatialML} | R Documentation | 
Predict Method for Geographical Random Forest
Description
Prediction of test data using the geographical random forest.
Usage
## S3 method for class 'grf'
predict(object, new.data, x.var.name, y.var.name, local.w=1, global.w=0,...)
Arguments
object | 
 an object that created by the function grf that includes all local forests.  | 
new.data | 
 a data frame containing new data.  | 
x.var.name | 
 the name of the variable with X coordinates.  | 
y.var.name | 
 the name of the variable with Y coordinates.  | 
local.w | 
 weight of the local model predictor allowing semi-local predictions. Default value is 1.  | 
global.w | 
 weight of the global model predictor allowing semi-local predictions. Default value is 0.  | 
... | 
 for other arguments passed to the generic predict functions. For example you may pass here the number of threats  | 
Details
A Geographical Random Forest prediction on unknown data. The nearest local random forest model in coordinate space is used to predict in each unknown y-variable location.
Value
vector of predicted values
Note
This function is under development. There should be improvements in future versions of the package SpatialML. Any suggestion is welcome!
Author(s)
Stamatis Kalogirou <stamatis.science@gmail.com>, Stefanos Georganos <sgeorgan@ulb.ac.be>
References
Stefanos Georganos, Tais Grippa, Assane Niang Gadiaga, Catherine Linard, Moritz Lennert, Sabine Vanhuysse, Nicholus Odhiambo Mboga, Eléonore Wolff & Stamatis Kalogirou (2019) Geographical Random Forests: A Spatial Extension of the Random Forest Algorithm to Address Spatial Heterogeneity in Remote Sensing and Population Modelling, Geocarto International, DOI: 10.1080/10106049.2019.1595177
See Also
Examples
  ## Not run: 
      RDF <- random.test.data(10,10,3)
      Coords<-RDF[ ,4:5]
      grf <- grf(dep ~ X1 + X2, dframe=RDF, bw=10,
                kernel="adaptive", coords=Coords)
      RDF.Test <- random.test.data(2,2,3)
      predict.grf(grf, RDF.Test, x.var.name="X", y.var.name="Y", local.w=1, global.w=0)
  
## End(Not run)
  
      #Load the sample data
      data(Income)
      #Create the vector of XY coordinates
      Coords<-Income[,1:2]
      #Fit local model
      grf <- grf(Income01 ~ UnemrT01 + PrSect01, dframe=Income, bw=60,
                kernel="adaptive", coords=Coords)
      #Create New Random Data - XY coordinates inside the sample data map extend
      x<-runif(20, min = 142498, max = 1001578)
      y<-runif(20, min = 3855768, max = 4606754)
      u<-runif(20, min = 5, max = 50)
      p<-runif(20, min = 0, max = 100)
      f<-runif(20, min = 2, max = 30)
      df2<-data.frame(X=x, Y= y,  UnemrT01=u,  PrSect01=p,  Foreig01=f)
      #Make predictions using the local model
      predict.grf(grf, df2, x.var.name="X", y.var.name="Y", local.w=1, global.w=0)