class_docstr: class for two sample comparison
  
  The tests and the confidence interval work for multi-endpoint comparison:
  If d1 and d2 have the same number of rows, then each column of the data
  in d1 is compared with the corresponding column in d2.
  
  Parameters
  ----------
  d1, d2 : instances of DescrStatsW
  
  Notes
  -----
  The result for the statistical tests and the confidence interval are
  independent of the user specified ddof.
  
  TODO: Extend to any number of groups or write a version that works in that
  case, like in SAS and SPSS.
docstr: degrees of freedom of Satterthwaite for unequal variance
          
docstr_tok: ["degrees","of","freedom","of","Satterthwaite","for","unequal","variance"]
code: def dof_satt(self):
      """degrees of freedom of Satterthwaite for unequal variance"""
      d1 = self.d1
      d2 = self.d2
      # this follows blindly the SPSS manual
      # except I use  ``_var`` which has ddof=0
      sem1 = d1._var / (d1.nobs - 1)
      sem2 = d2._var / (d2.nobs - 1)
      semsum = sem1 + sem2
      z1 = (sem1 / semsum) ** 2 / (d1.nobs - 1)
      z2 = (sem2 / semsum) ** 2 / (d2.nobs - 1)
      dof = 1.0 / (z1 + z2)
      return dof
  
imports: import numpy
  from scipy import stats
  from statsmodels.tools.decorators import cache_readonly
label_desc: Use image node_id 6 for calling the CompareMeans obj's underlying member method code with example usage: obj.dof_satt() and returns: dof