code: def test_test_vectorized(self, meth, compare):
      if "etest" in meth:
          pytest.skip("nonequivalence etest not vectorized")
  
      count1, n1, count2, n2 = 60, 514.775, 40, 543.0870000
      count1v = np.array([count1, count2])
      n1v = np.array([n1, n2])
      nfact = 1.0
      # scipy binom test requires int dtype
      count2v = np.array([count2, count1 * nfact], dtype=int)
      n2v = np.array([n2, n1 * nfact])
      count1, n1, count2, n2 = count1v, n1v, count2v, n2v
  
      # compare with degenerate interval for nonequivalence
      if compare == "ratio":
          f = 1.00
          low, upp = 1 / f, f
      else:
          v = 0.00
          low, upp = -v, v
  
      tst2 = nonequivalence_poisson_2indep(
          count1, n1, count2, n2, low, upp, method=meth, compare=compare
      )
      assert tst2.statistic.shape == (2,)
      assert tst2.pvalue.shape == (2,)
  
      if not ("cond" in meth or "etest" in meth):
          # not all methods are vectorized for smr.test_poisson_2indep
          tst = smr.test_poisson_2indep(
              count1,
              n1,
              count2,
              n2,
              method=meth,
              compare=compare,
              value=None,
              alternative="two-sided",
          )
  
          assert_allclose(tst2.pvalue, tst.pvalue, rtol=1e-12)
  
      # check vectorized equivalence test
      if compare == "ratio":
          f = 1.5
          low, upp = 1 / f, f
      else:
          v = 0.5
          low, upp = -v, v
  
      tst0 = smr.tost_poisson_2indep(
          count1[0],
          n1[0],
          count2[0],
          n2[0],
          low,
          upp,
          method=meth,
          compare=compare,
      )
      tst1 = smr.tost_poisson_2indep(
          count1[1],
          n1[1],
          count2[1],
          n2[1],
          low,
          upp,
          method=meth,
          compare=compare,
      )
  
      tst2 = smr.tost_poisson_2indep(
          count1, n1, count2, n2, low, upp, method=meth, compare=compare
      )
      assert tst2.statistic.shape == (2,)
      assert tst2.pvalue.shape == (2,)
  
      assert_allclose(tst2.statistic[0], tst0.statistic, rtol=1e-12)
      assert_allclose(tst2.pvalue[0], tst0.pvalue, rtol=1e-12)
      assert_allclose(tst2.statistic[1], tst1.statistic, rtol=1e-12)
      assert_allclose(tst2.pvalue[1], tst1.pvalue, rtol=1e-12)
  
imports: import pytest
  import warnings
  import numpy
  from numpy import arange
  from numpy.testing import assert_allclose, assert_equal
  from scipy import stats
  import statsmodels.stats.rates
  from statsmodels.stats.rates import confint_poisson, tolerance_int_poisson, confint_quantile_poisson, etest_poisson_2indep, confint_poisson_2indep, nonequivalence_poisson_2indep, power_poisson_ratio_2indep, power_equivalence_poisson_2indep, power_poisson_diff_2indep, power_equivalence_neginb_2indep, power_negbin_ratio_2indep, method_names_poisson_1samp, method_names_poisson_2indep
label_desc: Use image node_id 3 for calling the TestMethodsCompare2indep obj's underlying member method code with example usage: obj.test_test_vectorized(meth, compare) without return types