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
def X ( self ) : 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
Creates design matrix of variables to use in GP regression
        
        Returns
        ----------
        The design matrix