def test_parse_feature(self): self.assertEqual(Feature(name='geneA'), Feature.parse('geneA')) self.assertEqual(Feature(name='A', type=Type('gene')), Feature.parse('gene.A')) self.assertNotEqual(Feature(name='geneA'), Feature.parse('geneA(x)')) self.assertEqual(Feature(name='geneA', variant='x'), Feature.parse('geneA(x)')) self.assertEqual(Feature(name='geneA', variant='wild-type', organism=Organism('foo')), Feature.parse('foo/geneA+')) self.assertEqual(Feature(name='geneA', variant='mutant', organism=Organism('foo')), Feature.parse('foo/geneA-'))
def to_gnomic(self): accession = Target.to_gnomic(self) if self._value == 0: feature = Feature(name=self.id, accession=accession, type=Type(self.__gnomic_feature_type__)) return Del(feature) elif self.fold_change != 0: feature = Feature(name=self.id, accession=accession, type=Type(self.__gnomic_feature_type__), variant="value={}".format(self._value)) return Ins(feature)
def to_gnomic(self): accession = Target.to_gnomic(self) feature = Feature(accession=accession, type=self.__gnomic_feature_type__) if self._value == 0: return Del(feature) elif abs(self._value) > abs(self._reference_value): over_expression = Feature(accession=accession, type=self.__gnomic_feature_type__, variant="over-expression(%f)" % self.fold_change) return Mutation(feature, over_expression) elif abs(self._value) < abs(self._reference_value): under_expression = Feature(accession=accession, type=self.__gnomic_feature_type__, variant="down-regulation(%f)" % self.fold_change) return Mutation(feature, under_expression)
def to_gnomic(self): accession = Target.to_gnomic(self) feature = Feature(accession=accession, type='reaction') return Ins(feature)
def to_gnomic(self): accession = Target.to_gnomic(self) new_accession = Accession(self.id + self.swap_str) original_feature = Feature(accession=accession, type='reaction') new_feature = Feature(accession=new_accession, type='reaction') return Sub(original_feature, new_feature)
def to_gnomic(self): accession = Target.to_gnomic(self) feature = Feature(name=self.id, accession=accession) return Del(feature)
def to_gnomic(self): accession = Target.to_gnomic(self) feature = Feature(accession=accession, type=Type('reaction'), name=self.id) return Ins(feature)
def to_gnomic(self): accession = Target.to_gnomic(self) pairs = [(metabolite1.id, metabolite2.id) for metabolite1, metabolite2 in zip(*self.swap_pairs)] feature = Feature(name=self.id, accession=accession, type=Type('reaction'), variant=";".join(["=".join(pair) for pair in pairs])) return Mutation(old=None, new=feature)