Using multiple local databases for blastp on unix
1
0
Entering edit mode
8.3 years ago
peachila • 0

Hello!

I have recently started learning how to use unix for bioinformatics and I am having some problems right now with carrying out blastp against local databases I created.

My question is, is there a way to run blastp over multiple databases in the same run? My database is too large to be contained in one fasta file and the command only works for me if I specify a single fasta file as the database. If I write the following command I get an error:

blastp -db nr.*.fa -query At.fsa -out blastresults.out
Error: Too many positional arguments (1), the offending value: nr.AAXJ.fa
Error:  (CArgException::eSynopsis) Too many positional arguments (1), the offending value: nr.AAXJ.fa

Thank you, any help would be appreciated, Lisa.

EDIT: I should also mention I have over 1500 databases.

unix blast-database blastp • 2.8k views
ADD COMMENT
2
Entering edit mode

You need to create blast indexes using the fasta sequence files before you can do blastp. You can concatenate the 1500 files (I assume that is what you mean by "databases") into a single multi-fasta file with cat nr*.fa > concatenated.fa. Create blast indexes with command makeblastdb -in concatenated_file.fa -parse_seqids -dbtype prot -out mydata . Then run the search with blastp -db mydata -query At.fsa -out blastresults.out

You will find command line manual for blast+ a useful reference for the whole process. Add additional options/directory paths as needed to above commands.

ADD REPLY
1
Entering edit mode
8.2 years ago
Asaf 10k

You should generate a .pal file linking to all your databases. See https://www.ncbi.nlm.nih.gov/Web/Newsltr/Winter00/blastlab.html

ADD COMMENT

Login before adding your answer.

Traffic: 1104 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6