class_docstr: Basic one dimensional Gaussian-Gamma Mixture estimation class
  
  Note that it can work with positive or negative values,
  as long as there is at least one positive value.
  NB : The gamma distribution is defined only on positive values.
  5 parameters are used:
  - mean: gaussian mean
  - var: gaussian variance
  - shape: gamma shape
  - scale: gamma scale
  - mixt: mixture parameter (weight of the gamma)
class_docstr_tok: ["Basic","one","dimensional","Gaussian-Gamma","Mixture","estimation","class","Note","that","it","can","work","with","positive","or","negative","values",",","as","long","as","there","is","at","least","one","positive","value",".","NB",":","The","gamma","distribution","is","defined","only","on","positive","values",".","5","parameters","are","used",":","-","mean",":","gaussian","mean","-","var",":","gaussian","variance","-","shape",":","gamma","shape","-","scale",":","gamma","scale","-","mixt",":","mixture","parameter","(","weight","of","the","gamma",")"]
docstr: ML estimation of the Gamma parameters
docstr_tok: ["ML","estimation","of","the","Gamma","parameters"]
code: def estimate(self, x, eps=1.0e-7):
      """
      ML estimation of the Gamma parameters
      """
      self.check(x)
      n = np.size(x)
      y = np.sum(np.log(x)) / n - np.log(np.sum(x) / n)
      if y > -eps:
          self.shape = 1
      else:
          self.shape = _psi_solve(y)
      self.scale = np.sum(x) / (n * self.shape)
  
imports: import numpy
  import scipy.special
  import scipy.stats
label_desc: Use image node_id 4 for calling the Gamma obj's underlying member method code with example usage: obj.estimate(x, eps) without return types