本文整理汇总了Python中biom.Table.to_json方法的典型用法代码示例。如果您正苦于以下问题:Python Table.to_json方法的具体用法?Python Table.to_json怎么用?Python Table.to_json使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类biom.Table
的用法示例。
在下文中一共展示了Table.to_json方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: main
# 需要导入模块: from biom import Table [as 别名]
# 或者: from biom.Table import to_json [as 别名]
def main(table_in, table_out, pathways, to_classic):
# setup
table = load_table(table_in)
pathway_dict = get_pathway2kos()
# get set of kos from pathways
pathways_kos = set()
for pathway in pathways:
pathways_kos = pathways_kos | pathway_dict[pathway.strip()[-5:]]
# get selected kos
kos_to_keep = set(table.ids('observation')) & \
pathways_kos
if len(kos_to_keep) == 0:
raise EmptySetERROR('Intersection created empty set')
obs_ids = np.array(list(kos_to_keep))
data = np.empty([len(obs_ids), len(table.ids('sample'))])
for i, obs in enumerate(obs_ids):
data[i] = table.data(obs, 'observation')
# output
new_table = Table(data, obs_ids, table.ids('sample'), type="OTU table")
if to_classic:
# print to tab delimited biom table
f = open(table_out, 'w')
f.write(new_table.to_tsv())
else:
# print json biom table
new_table.to_json("filter_KOs_by_pathway.py", open(table_out, 'w'))
示例2: _1
# 需要导入模块: from biom import Table [as 别名]
# 或者: from biom.Table import to_json [as 别名]
def _1(data: biom.Table) -> BIOMV100Format:
data = _drop_axis_metadata(data)
ff = BIOMV100Format()
with ff.open() as fh:
fh.write(data.to_json(generated_by=_get_generated_by()))
return ff
示例3: generate_per_sample_biom
# 需要导入模块: from biom import Table [as 别名]
# 或者: from biom.Table import to_json [as 别名]
def generate_per_sample_biom(biom_file, limit):
"""Generate per-sample BIOM files
Parameters
----------
biom_file : str
A filepath to a BIOM table
limit : int or None
Limit the number of tables to load
Returns
-------
str
The sample ID
str
The table in BIOM Format v1.0
str
The table in the classic OTU table format
"""
table = load_table(biom_file)
obs_ids = table.ids(axis='observation')
obs_md = table.metadata(axis='observation')
if limit is None:
limit = np.inf
count = 0
for v, sample, _ in table.iter():
if count >= limit:
break
single_sample = Table(v[:, np.newaxis], obs_ids, [sample], obs_md)
single_sample.filter(lambda v_, i, md: v_ > 0, axis='observation')
biomv1 = single_sample.to_json('AG')
biomtxt = single_sample.to_tsv(
header_key='taxonomy',
header_value='taxonomy',
metadata_formatter=lambda x: '; '.join(x))
yield (sample, biomv1, biomtxt)
count += 1