def test_confusion_matrix_class_overlap_error(self): b = pd.Series([1, 2, 3, 4, 5, 6], name='site', index=['a1', 'a2', 'b1', 'b2', 'c1', 'c2']) b.index.name = 'id' b = qiime2.NumericMetadataColumn(b) with self.assertRaisesRegex(ValueError, "do not overlap"): confusion_matrix(self.tmpd, self.a, b)
def test_missing_values(self): md = qiime2.NumericMetadataColumn( pd.Series([1.0, 2.0, np.nan, 4.0], name='number', index=pd.Index( ['sample1', 'sample2', 'sample3', 'sample4'], name='id'))) with self.assertRaisesRegex(ValueError, 'missing values'): distance_matrix(md)
def test_one_sample(self): md = qiime2.NumericMetadataColumn( pd.Series([1.5], name='number', index=pd.Index(['sample1'], name='id'))) exp = skbio.DistanceMatrix([[0.0]], ids=['sample1']) obs = distance_matrix(md) self.assertEqual(exp, obs)
def setUp(self): super().setUp() self.beta_correlation = self.plugin.pipelines['beta_correlation'] dm = skbio.DistanceMatrix([[0, 1, 2], [1, 0, 1], [2, 1, 0]], ids=['sample1', 'sample2', 'sample3']) self.dm = Artifact.import_data('DistanceMatrix', dm) self.md = qiime2.NumericMetadataColumn( pd.Series([1, 2, 3], name='number', index=pd.Index(['sample1', 'sample2', 'sample3'], name='id')))
def test_float_column(self): md = qiime2.NumericMetadataColumn( pd.Series([1.5, 2.0, 3.0], name='number', index=pd.Index(['sample1', 'sample2', 'sample3'], name='id'))) exp = skbio.DistanceMatrix( [[0.0, 0.5, 1.5], [0.5, 0.0, 1.0], [1.5, 1.0, 0.0]], ids=['sample1', 'sample2', 'sample3']) obs = distance_matrix(md) self.assertEqual(exp, obs)
def test_int_column(self): md = qiime2.NumericMetadataColumn( pd.Series([1, 2, 3], name='number', index=pd.Index(['sample1', 'sample2', 'sample3'], name='id'))) exp = skbio.DistanceMatrix([[0, 1, 2], [1, 0, 1], [2, 1, 0]], ids=['sample1', 'sample2', 'sample3']) obs = distance_matrix(md) self.assertEqual(exp, obs)
def test_scatterplot(self): b = qiime2.NumericMetadataColumn(self.c) scatterplot(self.tmpd, self.c, b)
def _load_nmc(md_fp, column): md_fp = self.get_data_path(md_fp) md = pd.read_csv(md_fp, sep='\t', header=0, index_col=0) md = qiime2.NumericMetadataColumn(md[column]) return md
def _load_nmc(md_fp, column): md_fp = self.get_data_path(md_fp) md = pd.DataFrame.from_csv(md_fp, sep='\t') md = qiime2.NumericMetadataColumn(md[column]) return md