Как применить функцию к нескольким последовательностям FASTA в текстовом файле? - PullRequest
0 голосов
/ 12 июля 2020

У меня есть несколько последовательностей fasta в текстовом файле, которые выглядят так:

>header1
ACTGACTG
>header2
ATGCATGC
...

Я хотел бы применить функцию ко всем последовательностям одновременно. Есть ли функция для этого?

Мы будем благодарны за каждый ответ.

1 Ответ

1 голос
/ 15 июля 2020

Ответ простой = sapply(). Если вы хотите применить функцию, например, к списку некоторых объектов, вы используете метод sapply(), который является функцией map() (вы можете знать это из python). Вот пример:

v <- sample(1:100, 10)
> v
 [1] 92 69 87 42  7 33 51 62 26 80
f <- function(x){
+     # T if even else F
+     return(!x %% 2)
+ }
> sapply(v, FUN = f)
 [1]  TRUE FALSE FALSE  TRUE FALSE FALSE FALSE  TRUE  TRUE  TRUE

Пример с ДНК:

> library('dplyr')
> v <- c('ATGCTAGCT', 'GTGTACGTAC')
> sapply(v, FUN = function(dna){
+     return(dna %>% tolower)
+ })
   ATGCTAGCT   GTGTACGTAC 
 "atgctagct" "gtgtacgtac" 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...