class_docstr: Tests for multiple comparisons
  
  Parameters
  ----------
  data : ndarray
      independent data samples
  groups : ndarray
      group labels corresponding to each data point
  group_order : list[str], optional
      the desired order for the group mean results to be reported in. If
      not specified, results are reported in increasing order.
      If group_order does not contain all labels that are in groups, then
      only those observations are kept that have a label in group_order.
class_docstr_tok: ["Tests","for","multiple","comparisons","Parameters","--","--","--","--","--","data",":","ndarray","independent","data","samples","groups",":","ndarray","group","labels","corresponding","to","each","data","point","group_order",":","list","[","str","]",",","optional","the","desired","order","for","the","group","mean","results","to","be","reported","in",".","If","not","specified",",","results","are","reported","in","increasing","order",".","If","group_order","does","not","contain","all","labels","that","are","in","groups",",","then","only","those","observations","are","kept","that","have","a","label","in","group_order","."]
docstr: pairwise comparison for kruskal-wallis test
  
  This is just a reimplementation of scipy.stats.kruskal and does
  not yet use a multiple comparison correction.
docstr_tok: ["pairwise","comparison","for","kruskal-wallis","test","This","is","just","a","reimplementation","of","scipy.stats.kruskal","and","does","not","yet","use","a","multiple","comparison","correction","."]
code: def kruskal(self, pairs=None, multimethod="T"):
      """
      pairwise comparison for kruskal-wallis test
  
      This is just a reimplementation of scipy.stats.kruskal and does
      not yet use a multiple comparison correction.
  
      """
      self.getranks()
      tot = self.nobs
      meanranks = self.ranks.groupmean
      groupnobs = self.ranks.groupnobs
  
      # simultaneous/separate treatment of multiple tests
      f = (tot * (tot + 1.0) / 12.0) / stats.tiecorrect(
          self.rankdata
      )  # (xranks)
      print("MultiComparison.kruskal")
      for i, j in zip(*self.pairindices):
          # pdiff = np.abs(mrs[i] - mrs[j])
          pdiff = np.abs(meanranks[i] - meanranks[j])
          se = np.sqrt(
              f * np.sum(1.0 / groupnobs[[i, j]])
          )  # np.array([8,8]))) #Fixme groupnobs[[i,j]] ))
          Q = pdiff / se
  
          # TODO : print(statments, fix
          print(i, j, pdiff, se, pdiff / se, pdiff / se > 2.6310)
          print(stats.norm.sf(Q) * 2)
          return stats.norm.sf(Q) * 2
  
imports: from collections import namedtuple
  from statsmodels.compat.python import lzip, lrange
  import copy
  import math
  import numpy
  from numpy.testing import assert_almost_equal, assert_equal
  from scipy import stats, interpolate
  from statsmodels.iolib.table import SimpleTable
  from statsmodels.stats.multitest import multipletests, _ecdf, fdrcorrection, fdrcorrection_twostage
  from statsmodels.graphics import utils
  from statsmodels.tools.sm_exceptions import ValueWarning
label_desc: Use image node_id 3 for calling the MultiComparison obj's underlying member method code with example usage: obj.kruskal(pairs, multimethod) and returns: unknown