def test_enspie(self): # Totally even community should have ENS_pie = number of OTUs. self.assertAlmostEqual(enspie(np.array([1, 1, 1, 1, 1, 1])), 6) self.assertAlmostEqual(enspie(np.array([13, 13, 13, 13])), 4) # Hand calculated. arr = np.array([1, 41, 0, 0, 12, 13]) exp = 1 / ((arr / arr.sum()) ** 2).sum() self.assertAlmostEqual(enspie(arr), exp) # Using dominance. exp = 1 / dominance(arr) self.assertAlmostEqual(enspie(arr), exp) arr = np.array([1, 0, 2, 5, 2]) exp = 1 / dominance(arr) self.assertAlmostEqual(enspie(arr), exp)
def test_enspie(self): # Totally even community should have ENS_pie = number of OTUs. self.assertAlmostEqual(enspie(np.array([1, 1, 1, 1, 1, 1])), 6) self.assertAlmostEqual(enspie(np.array([13, 13, 13, 13])), 4) # Hand calculated. arr = np.array([1, 41, 0, 0, 12, 13]) exp = 1 / ((arr / arr.sum())**2).sum() self.assertAlmostEqual(enspie(arr), exp) # Using dominance. exp = 1 / dominance(arr) self.assertAlmostEqual(enspie(arr), exp) arr = np.array([1, 0, 2, 5, 2]) exp = 1 / dominance(arr) self.assertAlmostEqual(enspie(arr), exp)
def test_dominance(self): self.assertEqual(dominance(np.array([5])), 1) self.assertAlmostEqual(dominance(np.array([1, 0, 2, 5, 2])), 0.34)