本文整理汇总了Python中pbcommand.models.report.Table.get_column_by_id方法的典型用法代码示例。如果您正苦于以下问题:Python Table.get_column_by_id方法的具体用法?Python Table.get_column_by_id怎么用?Python Table.get_column_by_id使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pbcommand.models.report.Table
的用法示例。
在下文中一共展示了Table.get_column_by_id方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: create_table
# 需要导入模块: from pbcommand.models.report import Table [as 别名]
# 或者: from pbcommand.models.report.Table import get_column_by_id [as 别名]
def create_table(summary_csv):
"""Long Amplicon Analysis results table"""
columns = []
columns.append(Column(Constants.C_BC))
columns.append(Column(Constants.C_GOOD))
columns.append(Column(Constants.C_GOOD_PCT))
columns.append(Column(Constants.C_CHIM))
columns.append(Column(Constants.C_CHIM_PCT))
columns.append(Column(Constants.C_NOISE))
columns.append(Column(Constants.C_NOISE_PCT))
t = Table(Constants.T_R, columns=columns)
COL_IDS = [Constants.C_GOOD, Constants.C_GOOD_PCT, Constants.C_CHIM,
Constants.C_CHIM_PCT, Constants.C_NOISE, Constants.C_NOISE_PCT]
def add_column(barcode_id, n_good, n_chimera, n_noise):
pct_good = pct_chimera = pct_noise = 0
total = n_good + n_chimera + n_noise
if total > 0:
pct_good = n_good / float(total)
pct_chimera = n_chimera / float(total)
pct_noise = n_noise / float(total)
values = [n_good, pct_good, n_chimera, pct_chimera, n_noise, pct_noise]
t.add_data_by_column_id(Constants.C_BC, bc_id)
for column_id, value in zip(COL_IDS, values):
t.add_data_by_column_id(column_id, value)
with open(summary_csv) as csv_in:
reader = csv.reader(csv_in, delimiter=',')
reader.next()
for rec in reader:
assert len(rec) == 7, rec
bc_id = rec[0]
if bc_id == "All":
continue
add_column(bc_id, int(rec[1]), int(rec[3]), int(rec[5]))
n_good = sum(t.get_column_by_id(Constants.C_GOOD).values)
n_chimera = sum(t.get_column_by_id(Constants.C_CHIM).values)
n_noise = sum(t.get_column_by_id(Constants.C_NOISE).values)
add_column("All", n_good, n_chimera, n_noise)
return t