code: def test_ic():
      # test information criteria
  
      # examples penalty directly from formula
      n = 10
      k = 2
      assert_almost_equal(aic(0, 10, 2), 2 * k, decimal=14)
      # next see Wikipedia
      assert_almost_equal(
          aicc(0, 10, 2),
          aic(0, n, k) + 2 * k * (k + 1.0) / (n - k - 1.0),
          decimal=14,
      )
      assert_almost_equal(bic(0, 10, 2), np.log(n) * k, decimal=14)
      assert_almost_equal(
          hqic(0, 10, 2), 2 * np.log(np.log(n)) * k, decimal=14
      )
  
file_path: statsmodels/statsmodels/tools/tests/test_eval_measures.py
imports: import numpy
  from numpy.testing import assert_almost_equal, assert_equal
  import pytest
  from statsmodels.tools.eval_measures import aic, aic_sigma, aicc, aicc_sigma, bias, bic, bic_sigma, hqic, hqic_sigma, iqr, maxabs, meanabs, medianabs, medianbias, mse, rmse, rmspe, vare
label_desc: Use image node_id 3 for calling a global function with example usage: test_ic() without return types