This answer is from a long time ago. Is this still the only way to exclude these subsets even now?
When running BLAST throught the NCBI web interface, one can check the "exclude uncultured sequences" checkbox. When I run blast with BioPython on NCBI, I can add the Entrez query "all [filter] NOT(environmental samples[organism] OR metagenomes[orgn])" to obtain the same.
Now I've downloaded the nt database to my computer and try to run blastn locally. Does anybody know how to exclude sequences from uncultured organisms in this setup?
1 answer
1. Use NCBI Entrez to find all enviornmental records in Nucleotide database: "environmental samples"[organism] OR metagenomes[orgn]
2. Send to > File > Format > GI list
3. Then, run blast and exclude the file containing these enviornmental GIs from the BLAST nr database
blastn -query [filename] -db nr -negative_gilist [filename_with_gis_to_exclude]
Log in to answer this question.