NCBI Web サイトから FASTA ファイルを取得しようとしています。次の関数を使用します。
getncbiseq <- function(accession){
dbs <- c()
for (i in 1:numdbs){
db <- dbs[i]
choosebank(db)
resquery <- try(query(".tmpquery", paste("AC=", accession)),silent = TRUE)
if (!(inherits(resquery, "try-error"))){
queryname <- "query2"
thequery <- paste("AC=",accession,sep="")
query(`queryname`,`thequery`)
# see if a sequence was retrieved:
seq <- getSequence(query2$req[[1]])
closebank()
return(seq)
}
closebank()
}
print(paste("ERROR: accession",accession,"was not found"))
}
シーケンスを取得しようとすると
mydata <- getncbiseq("NC_001477")
getSequence(query2$req[[1]]) のエラー: オブジェクト 'query2' が見つかりません
これらのループ機能も短縮するより良い方法はありますか?
私が使用する場合
query('queryname','the query')
#or
query("queryname","thequery")
別のエラーが表示されます
query("queryname", "thequery") のエラー: 無効な要求:"(^) の不明なリスト: \"(^)thequery\""