跳到正文
0.16.6 文档

本页完整说明已译为现代汉语;函数、参数、代码和原始数据标识保留原样。 使用教程

全站目录 · 按任务查找

建立观察到的蛋白残基到基因组编码碱基的映射。相同 feature_id 的 CDS 行构成一个模型,区间须不重叠,属于同一序列且链已知。按转录方向排序,+ 递增、- 递减。显式 segment_order 覆盖基因组排序,允许声明跨圆形原点连接。segments 列表列可用 segment_order 声明转录顺序,包括负链及跨原点情况;否则按基因组链排序。通用 segment_index 只是源元数据,不定义转录顺序。嵌套 phase 可显式提供,或由明确首 phase/codon_start - 1 推导,不由外包区间猜测。拒绝跨不同序列 ID 的反式剪接模型。

用法

代码
build_ggchord_cds(cds_data, genetic_code = NULL, partial = c("error", "trim"))

参数

cds_data

数据框,含 feature_id、accver、有序一基闭区间 start/end、strand(+/-)及 GFF3 phase,可为 0–2 的数值或 read_gff3() 返回的原文。. 保持未知;嵌套 CDS 初始 phase 未知时须显式提供 codon_start。存在 type 时应先明确选择 CDS 行。也可每个 CDS 一行,提供 segments 列表列及显式初始 phase 或 codon_start(1–3)。嵌套基因组片段保留显式 segment_order,不会被父级外包区间替代。

genetic_code

可选正整数遗传密码 ID,可为单值或按 CDS feature_id 命名,须与已有 genetic_code 列一致。缺失 ID 保持未知,但不妨碍只做坐标投影。

partial

默认 "error",或显式选择 "trim"。

返回值

ggchord_cds 列表,含 models 汇总、每个注释按转录顺序排列的 segments、原始 source_data 及来源。分段 cds_start/cds_end 标识完整密码子的核苷酸位置,同时保留基因组坐标及源行号。

详细说明

GFF3 phase 是从片段生物学 5′ 端到下一密码子边界的碱基数。只跳过首 phase,后续 phase 校验累积编码长度,保留跨外显子密码子的碱基。partial = "error" 拒绝不完整末端;显式 "trim" 允许非零首 phase、部分末端标记及不完整末端密码子,并排除未组成完整密码子的碱基。此时残基 1 是首个完整观测密码子,不是推断的未观测蛋白位置。同一模型内的可选 partial5、partial3、genetic_code、protein_id 须一致。非零首 phase 要求 partial5,缺失时记录为 partial5;末端余数类似记录 partial3,除非已有显式冲突标记。遗传密码 ID 仅为元数据,坐标投影不翻译、不识别终止密码子、不推断密码表。codon_count 包含源末端终止密码子。简单三联体模型无法表示移码、核糖体滑移、翻译例外或非 join 位置操作符,声明时会拒绝。不推断完整蛋白长度或相似度。

示例

代码
library(dplyr)
data(plasmid_example_pUC19)
feature_source <- find_common_features(plasmid_example_pUC19)
features <- feature_source |>
  select(accver, start, end, strand, type, anno)
coding <- features |>
  filter(anno == "AmpR", type == "CDS") |>
  select(accver, start, end, strand) |>
  mutate(feature_id = paste(accver, "AmpR", sep = ":"), phase = 0)
cds <- build_ggchord_cds(coding, genetic_code = 11)
cds$features