本文整理汇总了Python中skbio.core.distance.DissimilarityMatrix类的典型用法代码示例。如果您正苦于以下问题:Python DissimilarityMatrix类的具体用法?Python DissimilarityMatrix怎么用?Python DissimilarityMatrix使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了DissimilarityMatrix类的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_from_file_with_file_path
def test_from_file_with_file_path(self):
"""Should identify the filepath correctly and parse from it."""
# should fail with the expected exception
with self.assertRaises(DissimilarityMatrixFormatError):
DissimilarityMatrix.from_file(self.bad_dm_fp)
obs = DissimilarityMatrix.from_file(self.dm_2x2_asym_fp)
self.assertEqual(self.dm_2x2_asym, obs)
self.assertTrue(isinstance(obs, DissimilarityMatrix))
obs = DissimilarityMatrix.from_file(self.dm_3x3_fp)
self.assertEqual(self.dm_3x3, obs)
self.assertTrue(isinstance(obs, DissimilarityMatrix))
示例2: test_round_trip_read_write
def test_round_trip_read_write(self):
"""Test reading, writing, and reading again works as expected."""
for dm_f in self.dm_fs:
# Read.
dm1 = DissimilarityMatrix.from_file(dm_f)
# Write.
out_f = StringIO()
dm1.to_file(out_f)
out_f.seek(0)
# Read.
dm2 = DissimilarityMatrix.from_file(out_f)
self.assertEqual(dm1, dm2)
示例3: test_filter_asymmetric
def test_filter_asymmetric(self):
# 2x2
ids = ['b', 'a']
exp = DissimilarityMatrix([[0, -2], [1, 0]], ids)
obs = self.dm_2x2_asym.filter(ids)
self.assertEqual(obs, exp)
# 3x3
dm = DissimilarityMatrix([[0, 10, 53], [42, 0, 22.5], [53, 1, 0]],
('bro', 'brah', 'breh'))
ids = ['breh', 'brah']
exp = DissimilarityMatrix([[0, 1], [22.5, 0]], ids)
obs = dm.filter(ids)
self.assertEqual(obs, exp)
示例4: test_from_file_real_file
def test_from_file_real_file(self):
"""Should correctly parse a real on-disk file."""
self.tmp_f.write('\n'.join(DM_3x3_WHITESPACE_F))
self.tmp_f.seek(0)
obs = DissimilarityMatrix.from_file(self.tmp_f)
self.assertEqual(obs, self.dm_3x3)
示例5: test_from_file_invalid_input
def test_from_file_invalid_input(self):
"""Raises error on ill-formatted dissimilarity matrix file."""
# Empty dm.
with self.assertRaises(DissimilarityMatrixFormatError):
_ = DissimilarityMatrix.from_file([])
# Number of values don't match number of IDs.
with self.assertRaises(DissimilarityMatrixFormatError):
_ = DissimilarityMatrix.from_file(self.bad_dm_f1)
# Mismatched IDs.
with self.assertRaises(DissimilarityMatrixFormatError):
_ = DissimilarityMatrix.from_file(self.bad_dm_f2)
# Extra data at end.
with self.assertRaises(DissimilarityMatrixFormatError):
_ = DissimilarityMatrix.from_file(self.bad_dm_f3)
# Missing data.
with self.assertRaises(DissimilarityMatrixFormatError):
_ = DissimilarityMatrix.from_file(self.bad_dm_f4)
# Header, but no data.
with self.assertRaises(DissimilarityMatrixFormatError):
_ = DissimilarityMatrix.from_file(self.bad_dm_f5)
# Non-hollow.
with self.assertRaises(DissimilarityMatrixError):
_ = DissimilarityMatrix.from_file(self.bad_dm_f6)
示例6: test_filter_subset
def test_filter_subset(self):
ids = ('c', 'a')
exp = DissimilarityMatrix([[0, 4.2], [4.2, 0]], ids)
obs = self.dm_3x3.filter(ids)
self.assertEqual(obs, exp)
ids = ('b', 'a')
exp = DissimilarityMatrix([[0, 0.01], [0.01, 0]], ids)
obs = self.dm_3x3.filter(ids)
self.assertEqual(obs, exp)
# 4x4
dm = DissimilarityMatrix([[0, 1, 55, 7], [1, 0, 16, 1],
[55, 16, 0, 23], [7, 1, 23, 0]])
ids = np.asarray(['3', '0', '1'])
exp = DissimilarityMatrix([[0, 7, 1], [7, 0, 1], [1, 1, 0]], ids)
obs = dm.filter(ids)
self.assertEqual(obs, exp)
示例7: test_from_file_real_file
def test_from_file_real_file(self):
"""Should correctly parse a real on-disk file."""
with tempfile.TemporaryFile(mode='r+',
prefix='skbio.core.tests.test_distance',
suffix='.txt') as fh:
fh.write('\n'.join(DM_3x3_WHITESPACE_F))
fh.seek(0)
obs = DissimilarityMatrix.from_file(fh)
self.assertEqual(obs, self.dm_3x3)
示例8: test_init_from_dm
def test_init_from_dm(self):
"""Constructs a dm from a dm."""
ids = ['foo', 'bar', 'baz']
# DissimilarityMatrix -> DissimilarityMatrix
exp = DissimilarityMatrix(self.dm_3x3_data, ids)
obs = DissimilarityMatrix(self.dm_3x3, ids)
self.assertEqual(obs, exp)
# Test that copy of data is not made.
self.assertTrue(obs.data is self.dm_3x3.data)
obs.data[0, 1] = 424242
self.assertTrue(np.array_equal(obs.data, self.dm_3x3.data))
# DistanceMatrix -> DissimilarityMatrix
exp = DissimilarityMatrix(self.dm_3x3_data, ids)
obs = DissimilarityMatrix(
DistanceMatrix(self.dm_3x3_data, ('a', 'b', 'c')), ids)
self.assertEqual(obs, exp)
# DissimilarityMatrix -> DistanceMatrix
with self.assertRaises(DistanceMatrixError):
DistanceMatrix(self.dm_2x2_asym, ['foo', 'bar'])
示例9: setUp
def setUp(self):
super(DissimilarityMatrixTests, self).setUp()
self.dm_1x1 = DissimilarityMatrix(self.dm_1x1_data, ['a'])
self.dm_2x2 = DissimilarityMatrix(self.dm_2x2_data, ['a', 'b'])
self.dm_2x2_asym = DissimilarityMatrix(self.dm_2x2_asym_data,
['a', 'b'])
self.dm_3x3 = DissimilarityMatrix(self.dm_3x3_data, ['a', 'b', 'c'])
self.dms = [self.dm_1x1, self.dm_2x2, self.dm_2x2_asym, self.dm_3x3]
self.dm_f_lines = [DM_1x1_F, DM_2x2_F, self.dm_2x2_asym_lines,
self.dm_3x3_lines]
self.dm_fs = [self.dm_1x1_f, self.dm_2x2_f, self.dm_2x2_asym_f,
self.dm_3x3_f]
self.dm_shapes = [(1, 1), (2, 2), (2, 2), (3, 3)]
self.dm_sizes = [1, 4, 4, 9]
self.dm_transposes = [
self.dm_1x1, self.dm_2x2,
DissimilarityMatrix([[0, -2], [1, 0]], ['a', 'b']), self.dm_3x3]
self.dm_redundant_forms = [np.array(self.dm_1x1_data),
np.array(self.dm_2x2_data),
np.array(self.dm_2x2_asym_data),
np.array(self.dm_3x3_data)]
示例10: DissimilarityMatrixTests
class DissimilarityMatrixTests(DissimilarityMatrixTestData):
def setUp(self):
super(DissimilarityMatrixTests, self).setUp()
self.dm_1x1 = DissimilarityMatrix(self.dm_1x1_data, ['a'])
self.dm_2x2 = DissimilarityMatrix(self.dm_2x2_data, ['a', 'b'])
self.dm_2x2_asym = DissimilarityMatrix(self.dm_2x2_asym_data,
['a', 'b'])
self.dm_3x3 = DissimilarityMatrix(self.dm_3x3_data, ['a', 'b', 'c'])
self.dms = [self.dm_1x1, self.dm_2x2, self.dm_2x2_asym, self.dm_3x3]
self.dm_f_lines = [DM_1x1_F, DM_2x2_F, self.dm_2x2_asym_lines,
self.dm_3x3_lines]
self.dm_fs = [self.dm_1x1_f, self.dm_2x2_f, self.dm_2x2_asym_f,
self.dm_3x3_f]
self.dm_shapes = [(1, 1), (2, 2), (2, 2), (3, 3)]
self.dm_sizes = [1, 4, 4, 9]
self.dm_transposes = [
self.dm_1x1, self.dm_2x2,
DissimilarityMatrix([[0, -2], [1, 0]], ['a', 'b']), self.dm_3x3]
self.dm_redundant_forms = [np.array(self.dm_1x1_data),
np.array(self.dm_2x2_data),
np.array(self.dm_2x2_asym_data),
np.array(self.dm_3x3_data)]
def test_round_trip_read_write(self):
"""Test reading, writing, and reading again works as expected."""
for dm_f in self.dm_fs:
# Read.
dm1 = DissimilarityMatrix.from_file(dm_f)
# Write.
out_f = StringIO()
dm1.to_file(out_f)
out_f.seek(0)
# Read.
dm2 = DissimilarityMatrix.from_file(out_f)
self.assertEqual(dm1, dm2)
def test_from_file(self):
"""Should parse and return a valid DissimilarityMatrix given a file."""
for dm_f, dm in zip(self.dm_fs, self.dms):
obs = DissimilarityMatrix.from_file(dm_f)
self.assertEqual(obs, dm)
def test_from_file_with_file_path(self):
"""Should identify the filepath correctly and parse from it."""
# should fail with the expected exception
with self.assertRaises(DissimilarityMatrixFormatError):
DissimilarityMatrix.from_file(self.bad_dm_fp)
obs = DissimilarityMatrix.from_file(self.dm_2x2_asym_fp)
self.assertEqual(self.dm_2x2_asym, obs)
self.assertTrue(isinstance(obs, DissimilarityMatrix))
obs = DissimilarityMatrix.from_file(self.dm_3x3_fp)
self.assertEqual(self.dm_3x3, obs)
self.assertTrue(isinstance(obs, DissimilarityMatrix))
def test_from_file_extra_junk(self):
"""Should correctly parse a file with extra whitespace and comments."""
obs = DissimilarityMatrix.from_file(self.dm_3x3_whitespace_f)
self.assertEqual(obs, self.dm_3x3)
def test_from_file_list_of_strings(self):
"""Should correctly parse a list of strings."""
obs = DissimilarityMatrix.from_file(DM_3x3_WHITESPACE_F)
self.assertEqual(obs, self.dm_3x3)
def test_from_file_real_file(self):
"""Should correctly parse a real on-disk file."""
with tempfile.TemporaryFile(mode='r+',
prefix='skbio.core.tests.test_distance',
suffix='.txt') as fh:
fh.write('\n'.join(DM_3x3_WHITESPACE_F))
fh.seek(0)
obs = DissimilarityMatrix.from_file(fh)
self.assertEqual(obs, self.dm_3x3)
def test_from_file_invalid_input(self):
"""Raises error on ill-formatted dissimilarity matrix file."""
# Empty dm.
with self.assertRaises(DissimilarityMatrixFormatError):
DissimilarityMatrix.from_file([])
# Number of values don't match number of IDs.
with self.assertRaises(DissimilarityMatrixFormatError):
DissimilarityMatrix.from_file(self.bad_dm_f1)
# Mismatched IDs.
with self.assertRaises(DissimilarityMatrixFormatError):
DissimilarityMatrix.from_file(self.bad_dm_f2)
# Extra data at end.
with self.assertRaises(DissimilarityMatrixFormatError):
DissimilarityMatrix.from_file(self.bad_dm_f3)
#.........这里部分代码省略.........
示例11: test_from_file_list_of_strings
def test_from_file_list_of_strings(self):
"""Should correctly parse a list of strings."""
obs = DissimilarityMatrix.from_file(DM_3x3_WHITESPACE_F)
self.assertEqual(obs, self.dm_3x3)
示例12: test_from_file_extra_junk
def test_from_file_extra_junk(self):
"""Should correctly parse a file with extra whitespace and comments."""
obs = DissimilarityMatrix.from_file(self.dm_3x3_whitespace_f)
self.assertEqual(obs, self.dm_3x3)
示例13: test_from_file
def test_from_file(self):
"""Should parse and return a valid DissimilarityMatrix given a file."""
for dm_f, dm in zip(self.dm_fs, self.dms):
obs = DissimilarityMatrix.from_file(dm_f)
self.assertEqual(obs, dm)