code: def test_noncent_t():
      # t(98) = 1.5, confidence level = .95, two-sided CI:
      # > lot(1.5,98,.95)
      # [1] -0.4749756 0.9750024
      # > hit(1.5,98,.95)
      # [1] 3.467285 0.025005
  
      # > conf.limits.nct(1.5,98,.95)
      #  Lower.Limit Prob.Low.Limit Upper.Limit Prob.Up.Limit
      # Values -0.474934 0.975 3.467371 0.02499999
  
      t_stat, df = 1.5, 98
  
      ci_nc = [-0.474934, 3.467371]
      res = _noncentrality_t(t_stat, df, alpha=0.05)
      assert_allclose(res.confint, ci_nc, rtol=0.005)
      # verify umvue unbiased
      mean = stats.nct.mean(df, res.nc)
      assert_allclose(t_stat, mean, rtol=1e-8)
  
      # Tolerancee relaxed due to Boost integration in SciPy
      assert_allclose(
          stats.nct.cdf(t_stat, df, res.confint),
          [0.975, 0.025],
          rtol=1e-6,
      )
  
imports: from scipy import stats
  from numpy.testing import assert_allclose
  from statsmodels.stats.effect_size import _noncentrality_chisquare, _noncentrality_f, _noncentrality_t
label_desc: Use image node_id 3 for calling a global function with example usage: test_noncent_t() without return types