text: # -*- coding: utf-8 -*-
  """
  
  Created on Mon Dec 10 08:54:02 2012
  
  Author: Josef Perktold
  """
  
  from __future__ import print_function
  import numpy as np
  from numpy.testing import assert_almost_equal
  
  from statsmodels.stats.inter_rater import fleiss_kappa, cohens_kappa, KappaResults
  
  
  table0 = np.asarray('''\
  1 	0 	0 	0 	0 	14 	1.000
  2 	0 	2 	6 	4 	2 	0.253
  3 	0 	0 	3 	5 	6 	0.308
  4 	0 	3 	9 	2 	0 	0.440
  5 	2 	2 	8 	1 	1 	0.330
  6 	7 	7 	0 	0 	0 	0.462
  7 	3 	2 	6 	3 	0 	0.242
  8 	2 	5 	3 	2 	2 	0.176
  9 	6 	5 	2 	1 	0 	0.286
  10 	0 	2 	2 	3 	7 	0.286'''.split(), float).reshape(10,-1)
  
  
  Total = np.asarray("20 	28 	39 	21 	32".split('\t'), int)
  Pj = np.asarray("0.143 	0.200 	0.279 	0.150 	0.229".split('\t'), float)
  kappa_wp = 0.210
  table1 = table0[:, 1:-1]
  
  
  print(fleiss_kappa(table1))
  table4 = np.array([[20,5], [10, 15]])
  print('res', cohens_kappa(table4), 0.4) #wikipedia
  
  table5 = np.array([[45, 15], [25, 15]])
  print('res', cohens_kappa(table5), 0.1304) #wikipedia
  
  table6 = np.array([[25, 35], [5, 35]])
  print('res', cohens_kappa(table6), 0.2593)  #wikipedia
  print('res', cohens_kappa(table6, weights=np.arange(2)), 0.2593)  #wikipedia
  t7 = np.array([[16, 18, 28],
                 [10, 27, 13],
                 [28, 20, 24]])
  print(cohens_kappa(t7, weights=[0, 1, 2]))
  
  table8 = np.array([[25, 35], [5, 35]])
  print('res', cohens_kappa(table8))
  
  #SAS example from http://www.john-uebersax.com/stat/saskappa.htm
  '''
     Statistic          Value       ASE     95% Confidence Limits
     ------------------------------------------------------------
     Simple Kappa      0.3333    0.0814       0.1738       0.4929
     Weighted Kappa    0.2895    0.0756       0.1414       0.4376
  '''
  t9 = [[0,  0,  0],
        [5, 16,  3],
        [8, 12, 28]]
  res9 = cohens_kappa(t9)
  print('res', res9)
  print('res', cohens_kappa(t9, weights=[0, 1, 2]))
  
  
  #check max kappa, constructed by hand, same marginals
  table6a = np.array([[30, 30], [0, 40]])
  res = cohens_kappa(table6a)
  assert res.kappa == res.kappa_max
  #print np.divide(*cohens_kappa(table6)[:2])
  print(res.kappa / res.kappa_max)
  
  
  table10 = [[0, 4, 1],
             [0, 8, 0],
             [0, 1, 5]]
  res10 = cohens_kappa(table10)
  print('res10', res10)
  
  
  '''SAS result for table10
  
                    Simple Kappa Coefficient
                --------------------------------
                Kappa                     0.4842
                ASE                       0.1380
                95% Lower Conf Limit      0.2137
                95% Upper Conf Limit      0.7547
  
                    Test of H0: Kappa = 0
  
                ASE under H0              0.1484
                Z                         3.2626
                One-sided Pr >  Z         0.0006
                Two-sided Pr > |Z|        0.0011
  
                     Weighted Kappa Coefficient
                --------------------------------
                Weighted Kappa            0.4701
                ASE                       0.1457
                95% Lower Conf Limit      0.1845
                95% Upper Conf Limit      0.7558
  
                 Test of H0: Weighted Kappa = 0
  
                ASE under H0              0.1426
                Z                         3.2971
                One-sided Pr >  Z         0.0005
                Two-sided Pr > |Z|        0.0010
  '''
  