Source code for moonstone.parsers.counts.taxonomy.qiime

from pandas import DataFrame

from moonstone.parsers.counts.taxonomy.base import BaseTaxonomyCountsParser


[docs]class Qiime2Parser(BaseTaxonomyCountsParser): """ Parse output csv data obtained by `Qiime2 <https://qiime2.org/>`_. """ taxa_column = '#OTU ID' terms_to_remove = ["Ambiguous_taxa", "Unknown Family", "uncultured"]
[docs] def __init__(self, *args, **kwargs): super().__init__(*args, parsing_options={'skiprows': 1}, **kwargs)
def _load_data(self) -> DataFrame: df = super()._load_data() df = self.split_taxa_fill_none(df, sep=";", terms_to_remove=self.terms_to_remove) df = df.set_index(self.taxonomical_names[:self.rank_level]) return df