write.fasta функция, указывающая каталог для записи в цикле - PullRequest
0 голосов
/ 14 июля 2020

У меня есть код ниже, который я использую для создания нескольких файлов fasta из выравнивания и дерева. Я хотел бы записать эти несколько файлов fasta в отдельные каталоги, но мой код записывает папку и файл бок о бок, а не записывает файл внутри папки. Заранее спасибо.

l = 182
i = 1
repeat {
  a = (tree[[i]]$tip.label)     #sequences names
  b = div_seqs[names(div_seqs) %in% a]   #sequences
  mylabel <- "seqs" 
  tempdir = dir.create(paste0(mylabel, "_", i))
  myfile <- (paste0(mylabel, "_", i, ".fas"))
  file.path(tempdir(), write.fasta(b, a, file = myfile, open = "w", nbchar = 600, as.string = FALSE))
  i = i+1
  if (i==l+1){
    break
  }
} ```

1 Ответ

0 голосов
/ 14 июля 2020

Удалось найти способ:

l = 182
i = 1
repeat {
  setwd(folder)
  a = (tree[[i]]$tip.label) 
  b = div_seqs[names(div_seqs) %in% a] 
  mylabel <- "seqs" 
  dir.create(paste0(mylabel, "_", i))
  myfile <- (paste0(mylabel, "_", i, ".fas"))
  setwd(paste0(folder, "/", mylabel, "_", i))
  write.fasta(b, a, file = myfile, open = "w", nbchar = 600, as.string = FALSE)
  i = i+1
  if (i==l+1){
    break
  }
} ```
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...