code: def markov_blanket(y, mean, scale, shape, skewness):
          
          m1 = (np.sqrt(shape)*sp.gamma((shape-1.0)/2.0))/(np.sqrt(np.pi)*sp.gamma(shape/2.0))
          mean = mean + (skewness - (1.0/skewness))*scale*m1
          return Skewt.logpdf_internal(x=y, df=shape, loc=mean, gamma=skewness, scale=scale)
docs: Markov blanket for each likelihood term
  
          Parameters
          ----------
          y : np.ndarray
              univariate time series
  
          mean : np.ndarray
              array of location parameters for the Skew t distribution
  
          scale : float
              scale parameter for the Skew t distribution
  
          shape : float
              tail thickness parameter for the Skew t distribution
  
          skewness : float
              skewness parameter for the Skew t distribution
  
          Returns
          ----------
          - Markov blanket of the Skew t family