code: def test_em_gmm_full():
      # Computing the BIC value for different configurations
      # of a GMM with ful diagonal matrices
      # The BIC should be maximal for a number of classes of 1  or 2
      # generate some data
      dim = 2
      x = np.concatenate(
          (nr.randn(100, dim), 3 + 2 * nr.randn(100, dim))
      )
  
      # estimate different GMMs of that data
      maxiter, delta = 100, 1.0e-4
  
      bic = np.zeros(5)
      for k in range(1, 6):
          lgmm = GMM(k, dim)
          lgmm.initialize(x)
          bic[k - 1] = lgmm.estimate(x, maxiter, delta)
  
      assert bic[4] < bic[1]
  
file_path: nipy/nipy/algorithms/clustering/tests/test_gmm.py
imports: import numpy
  from ..gmm import GMM, best_fitting_GMM
label_desc: Use image node_id 9 for calling a global function with example usage: test_em_gmm_full() without return types