Загрузка файла FASTA в R быстрее, чем при использовании read.fasta () из seqinr - PullRequest
0 голосов
/ 17 января 2020

В настоящее время я использую функцию read.fasta() из пакета R seqinr.
Я думаю, что создание индексного файла уже ускоряет чтение, но мне было интересно, есть ли уже другая функция для его быстрой загрузки?

Я искал функцию read.big.fasta() от PopGenome, но пакет был удален из CRAN и Bioconductor, поэтому я больше не уверен в этом. Любые советы?

1 Ответ

2 голосов
/ 20 января 2020

Вы можете использовать readDNAStringSet из Biostrings.

Получить геном человека: download.file ("https://hgdownload.soe.ucsc.edu/goldenPath/hg38/bigZips/hg38.fa.gz", "../ Downloads / test.fa .gz ")

Использование readDNAStringSet или read.fasta:

f1 = function(){readDNAStringSet("../Downloads/test.fa.gz")}
f2 = function(){read.fasta("../Downloads/test.fa.gz")}

library(Biostrings)
library(seqinr)

microbenchmark::microbenchmark(f1(),times=5)
Unit: seconds
 expr      min       lq     mean   median       uq      max neval
 f1() 42.82203 43.57036 45.10369 45.64206 46.37412 47.10987     5

microbenchmark::microbenchmark(f1(),times=5)
### did not finish running
### so definitely not the option for large fasta files
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...