0

我正在编写 matlab 代码,该代码应该遍历列表序列并一次爆炸。这是代码的相关部分:

%blast the seq

[res, ROTE] = blastncbi(seq, 'blastn');
res1 = getblast(res, 'WaitTime',ROTE);
resName = res1.Hits(1).Name

对于某些 seq,它起作用了,然后最后它给了我这个错误消息:

Error using getblast (line 176)
BLAST V7EBUE0901R is unavailable - try later.

请注意,我已将 ROTE 定义为“WaitTime”值,正如该函数文档中所建议的那样。

脚本必须迭代很多很多基因,所以我不能让它每 5 分钟崩溃一次!

4

1 回答 1

0

RTOE返回的是blastncbi估计需要多长时间的时间。也许估计有时根本不正确。

处理这个问题的两种简单方法可能是等待更长时间,或者尝试两次:

res1 = getblast(res, 'WaitTime',ROTE*10);

或者

try
   res1 = getblast(res, 'WaitTime',ROTE);
catch
   res1 = getblast(res, 'WaitTime',ROTE);
end

当然,这假设您确定您请求的信息确实可用。

于 2014-07-02T09:11:43.803 回答