Hello everyone!
I need to perform a function on several fasta files located in the same folder. I first created a file object which lists the files names present in the Rtest folder.
files <- list.files(path="~/R/Rtest")
Then I put my script into a function called genWS. The first step of this function is to import the files one by one to perform a series of actions on them.
genWS <- function(input) {
x<-readDNAStringSet(file="input", format="fasta")
...
}
At the end of the script I put a FOR loop to go on the next fasta file.
for (j in 1:length(files)) {
  genWS(files[j])
}
My problem is that I got this error when I try to run the whole script despite it works fine when I import fasta file one by one manually.
Error in .Call2("new_input_ExternalFilePtr", fp, PACKAGE = "Biostrings") : 
  cannot open file 'input'
Called from: .Call2("new_input_ExternalFilePtr", fp, PACKAGE = "Biostrings")
Any idea of what happen and how to solve it ?
Thanks!

Also FWIW note that you can load all your files at once by passing all their paths to
readDNAStringSet()e.g.readDNAStringSet(files)wherefilesis the character vector you obtained withlist.files(path="~/R/Rtest"). So, depending on what you need to do with the sequences, and granted that you have enough memory to load them all, it might be that you don't need a loop at all.H.