class_docstr: class to perform kernel ridge regression (gaussian process)
  
  Warning: this class is memory intensive, it creates nobs x nobs distance
  matrix and its inverse, where nobs is the number of rows (observations).
  See sparse version for larger number of observations
  
  
  Notes
  -----
  
  Todo:
  * normalize multidimensional x array on demand, either by var or cov
  * add confidence band
  * automatic selection or proposal of smoothing parameters
  
  Note: this is different from kernel smoothing regression,
     see for example https://en.wikipedia.org/wiki/Kernel_smoother
  
  In this version of the kernel ridge regression, the training points
  are fitted exactly.
  Needs a fast version for leave-one-out regression, for fitting each
  observation on all the other points.
  This version could be numerically improved for the calculation for many
  different values of the ridge coefficient. see also short summary by
  Isabelle Guyon (ETHZ) in a manuscript KernelRidge.pdf
  
  Needs verification and possibly additional statistical results or
  summary statistics for interpretation, but this is a problem with
  non-parametric, non-linear methods.
  
  Reference
  ---------
  
  Rasmussen, C.E. and C.K.I. Williams, 2006, Gaussian Processes for Machine
  Learning, the MIT Press, www.GaussianProcess.org/gpal, chapter 2
  
  a short summary of the kernel ridge regression is at
  http://www.ics.uci.edu/~welling/teaching/KernelsICS273B/Kernel-Ridge.pdf
class_docstr_tok: ["class","to","perform","kernel","ridge","regression","(","gaussian","process",")","Warning",":","this","class","is","memory","intensive",",","it","creates","nobs","x","nobs","distance","matrix","and","its","inverse",",","where","nobs","is","the","number","of","rows","(","observations",")",".","See","sparse","version","for","larger","number","of","observations","Notes","--","--","-","Todo",":","*","normalize","multidimensional","x","array","on","demand",",","either","by","var","or","cov","*","add","confidence","band","*","automatic","selection","or","proposal","of","smoothing","parameters","Note",":","this","is","different","from","kernel","smoothing","regression",",","see","for","example","https",":","\/\/en.wikipedia.org\/wiki\/Kernel_smoother","In","this","version","of","the","kernel","ridge","regression",",","the","training","points","are","fitted","exactly",".","Needs","a","fast","version","for","leave-one-out","regression",",","for","fitting","each","observation","on","all","the","other","points",".","This","version","could","be","numerically","improved","for","the","calculation","for","many","different","values","of","the","ridge","coefficient",".","see","also","short","summary","by","Isabelle","Guyon","(","ETHZ",")","in","a","manuscript","KernelRidge.pdf","Needs","verification","and","possibly","additional","statistical","results","or","summary","statistics","for","interpretation",",","but","this","is","a","problem","with","non-parametric",",","non-linear","methods",".","Reference","--","--","--","--","-","Rasmussen",",","C.E",".","and","C.K.I",".","Williams",",","2006",",","Gaussian","Processes","for","Machine","Learning",",","the","MIT","Press",",","www.GaussianProcess.org\/gpal",",","chapter","2","a","short","summary","of","the","kernel","ridge","regression","is","at","http",":","\/\/www.ics.uci.edu\/~welling\/teaching\/KernelsICS273B\/Kernel-Ridge.pdf"]
docstr: some basic plots
docstr_tok: ["some","basic","plots"]
code: def plot(self, y, plt=plt):
      """some basic plots"""
      # todo return proper graph handles
      plt.figure()
      plt.plot(self.x, self.y, "bo-", self.x, self.yest, "r.-")
      plt.title("sample (training) points")
      plt.figure()
      plt.plot(
          self.xpredict, y, "bo-", self.xpredict, self.ypredict, "r.-"
      )
      plt.title("all points")
  
file_path: statsmodels/statsmodels/sandbox/regression/kernridgeregress_class.py
imports: import numpy
  from scipy import spatial
  import matplotlib.pylab
label_desc: Use image node_id 4 for calling the GaussProcess obj's underlying member method code with example usage: obj.plot(y, plt) without return types