class_docstr: Inherits time series methods from TSM class.
  
  **** GAUSSIAN PROCESS NONLINEAR AUTOREGRESSIVE (GP-NARX) MODELS ****
  
  Parameters
  ----------
  data : pd.DataFrame or np.array
      Field to specify the time series data that will be used.
  
  ar : int
      Field to specify how many AR terms the model will have.
  
  kernel : kernel object
      For example, SquaredExponential() or OrnsteinUhlenbeck()
  
  integ : int (default : 0)
      Specifies how many time to difference the time series.
  
  target : str (pd.DataFrame) or int (np.array)
      Specifies which column name or array index to use. By default, first
      column/array will be selected as the dependent variable.
class_docstr_tok: ["Inherits","time","series","methods","from","TSM","class",".","*","*","*","*","GAUSSIAN","PROCESS","NONLINEAR","AUTOREGRESSIVE","(","GP-NARX",")","MODELS","*","*","*","*","Parameters","--","--","--","--","--","data",":","pd.DataFrame","or","np.array","Field","to","specify","the","time","series","data","that","will","be","used",".","ar",":","int","Field","to","specify","how","many","AR","terms","the","model","will","have",".","kernel",":","kernel","object","For","example",",","SquaredExponential","(",")","or","OrnsteinUhlenbeck","(",")","integ",":","int","(","default",":","0",")","Specifies","how","many","time","to","difference","the","time","series",".","target",":","str","(","pd.DataFrame",")","or","int","(","np.array",")","Specifies","which","column","name","or","array","index","to","use",".","By","default",",","first","column\/array","will","be","selected","as","the","dependent","variable","."]
docstr: Creates design matrix of variables to use in GP regression
  
  Returns
  ----------
  The design matrix
docstr_tok: ["Creates","design","matrix","of","variables","to","use","in","GP","regression","Returns","--","--","--","--","--","The","design","matrix"]
code: def X(self):
      """Creates design matrix of variables to use in GP regression
  
      Returns
      ----------
      The design matrix
      """
      if self.ar == 1:
          return np.array([self.data_full[(self.max_lag - 1) : -1]])
      else:
          for i in range(0, self.ar):
              datapoint = self.data_full[
                  (self.max_lag - i - 1) : -i - 1
              ]
              if i == 0:
                  X = datapoint
              else:
                  X = np.vstack((X, datapoint))
      return X
  
imports: import sys
  import numpy
  import pandas
  import scipy.linalg
  import scipy.sparse
  import scipy.stats
  from scipy.stats import multivariate_normal
  from ..None import arma
  from ..None import output
  from ..None import tests
  from ..None import tsm
  from ..None import data_check
  from .kernels import *
label_desc: Use image node_id 6 for calling the GPNARX obj's underlying member method code with example usage: obj.X() and returns: X, np