Один объект для GenomicRanges и DNAStringSet - PullRequest
0 голосов
/ 05 марта 2020

Я имею дело с бактериальной сборкой генома NCBI, например ftp: //ftp.ncbi.nlm.nih.gov/genomes/all/GCA/000/236/565/GCA_000236565.2_ASM23656v2

Обычно они предоставляют FNA (сборку генома), GFF (функции генов) и FAA (транслированные последовательности белка)

В настоящий момент я объединяю GFF и FAA в объекте GRange и загружаю файл FNA если необходимо. Однако, когда я имею дело с входящими и выходными фланкирующими последовательностями, было бы действительно полезно загрузить все 3 объекта в один объект, чтобы упростить код и доступ из GRanges к фактической базовой последовательности.

Существуют наборы expression, которые объединяют phenoData, FeatureData и измерительная матрица. Нечто подобное я хотел бы построить с GRanges и DNAStringSets. Как это сделать?

library(rtracklayer)
library(Biostrings)
library(GenomicRanges)

gffTab <- import.gff3("GCA_000236565.2_ASM23656v2_genomic.gff")
dnaSet <- readDNAStringSet("GCA_000236565.2_ASM23656v2_genomic.fna")
faaFile <- readAAStringSet("GCA_000236565.2_ASM23656v2_genomic.fna")
object <- list(gff=gffTab,dna=dnaSet,faaFile=faaFile)

1 downStream <- flank(gffTab,100,start=FALSE)
2 downSeq <- dnaSet[downStream]
# Combine 1 and 2 in one step
...