<p>The answer is it depends. 40% pident with ~100% qcovs (assuming length of protein is not very small) tells you that the virulence factor (VF) and your prokka predicted protein are likely homologs, they belong to the same (or closely related) protein family. For some research studies, you might annotate your prokka proteins as 'putative' VFs.</p>

<p>On the other hand, in a clinical context, even 90% pident might not be enough evidence to say these predictions are real VFs. A single amino acid change alters the protein and therefore potentially the function. You could investigate bioinformtiaclly how the changes impact the protein structure and domains etc. Ideally validate it experimentally, e.g. for a new putative E. coli toxin, clone the protein and express it in a commensal E. coli strain and test the toxicity of the new strain.</p>

<p>In practise, think about what question you're asking and who you want to convince. Try numerous thresholds and see how robust your results are to threshold changes (4,000 VFs seems like a lot for a 'few' genomes). You could also try the VirulenceFinder database. When annotating antibiotic resistance genes, if you use 80% pident and qcovs thresholds with a minimum protein length then most researchers will accept your predicted annotations as 'conservative', maybe the VF community has similar arbitrary but pragmatic standards.</p>

CC BY-SA 4.0
2019-04-07T09:42:17.767Z
2019-04-07T09:42:17.767Z
Chris_Rands
<p>I  downloaded virulence factor database from <a href="http://www.mgc.ac.cn/VFs/main.htm" rel="nofollow noreferrer">here</a> , to predict virulence genes from few genomes that my lab  sequenced. I  performed local blast on the database with default setting and found around 4000 genes. I want to filter this result. I am not sure how to proceed. There are evalue, pident (percent identity), qcovs (query coverage) etc that I can tweak and I did tweak. For example, if I set pident above 40% the qcovs automatically goes close to 100%. That gave me indication above 40% is pretty significant and biologically relevant. But I am not sure what percent I should consider for treating the query as having the same function as the subject -- in this case that function is virulence. </p>

<p>Need some guidance. </p>

<p>Edit1: I ran blastp</p>

<p>Edit2: I am blasting protein (cds predicted from genome by annotation tool prokka). My question here is what is the most reasonable way to filter putative virulence factor using blast. </p>

CC BY-SA 4.0
2019-04-06T11:52:15.220Z
Please edit your question and tell us what your queries are. What are you blasting? Proteins? DNA? cDNA? Are your queries known genes? Are they the sequences from the virulence database? Why are you using blast for this? What is the question you are trying to answer?
terdon
CC BY-SA 4.0
2019-04-06T12:45:56.213Z
I am blasting protein (cds predicted from genome by annotation tool prokka).
Ahmed Abdullah
CC BY-SA 4.0
2019-04-06T12:57:02.170Z
And how close are the genomes you are blasting? You can't have an absolute value to filter by, it will always depend on the phylogenetic distance between query and subject. How many proteins are you comparing? And why blastp if you are blasting against genomes? Do you mean tblastx or blastx? Also note that virulence is not a function. What you want to do, presumably, is identify the homologous proteins. Blast isn't necessarily the best tool for this. Have a look at my answers [here](https://biology.stackexchange.com/a/3766/1306) and [here](https://biology.stackexchange.com/a/19356/1306).
terdon
CC BY-SA 4.0
2019-04-06T14:37:34.853Z
I am using local blast and blasting against virulence factor database found here http://www.mgc.ac.cn/VFs/main.htm.
Ahmed Abdullah
CC BY-SA 4.0
2019-04-06T14:46:42.697Z
"Do you mean tblastx or blastx"
No blastp. I have extracted translated cds from annotated gbk files.
Ahmed Abdullah
<blast><blastp>
How to filter blast results from blast run against virulence factor database
# How to filter blast results from blast run against virulence factor database

(Asked by: username_0 on 2019-04-06)

I downloaded virulence factor database from [here](http://www.mgc.ac.cn/VFs/main.htm) , to predict virulence genes from few genomes that my lab sequenced. I performed local blast on the database with default setting and found around 4000 genes. I want to filter this result. I am not sure how to proceed. There are evalue, pident (percent identity), qcovs (query coverage) etc that I can tweak and I did tweak. For example, if I set pident above 40% the qcovs automatically goes close to 100%. That gave me indication above 40% is pretty significant and biologically relevant. But I am not sure what percent I should consider for treating the query as having the same function as the subject -- in this case that function is virulence.

Need some guidance.

Edit1: I ran blastp

Edit2: I am blasting protein (cds predicted from genome by annotation tool prokka). My question here is what is the most reasonable way to filter putative virulence factor using blast.

**Tags:** blast, blastp
> **Comments:**
> **username_1**: Please edit your question and tell us what your queries are. What are you blasting? Proteins? DNA? cDNA? Are your queries known genes? Are they the sequences from the virulence database? Why are you using blast for this? What is the question you are trying to answer?  
> **username_0**: I am blasting protein (cds predicted from genome by annotation tool prokka).  
> **username_1**: And how close are the genomes you are blasting? You can't have an absolute value to filter by, it will always depend on the phylogenetic distance between query and subject. How many proteins are you comparing? And why blastp if you are blasting against genomes? Do you mean tblastx or blastx? Also note that virulence is not a function. What you want to do, presumably, is identify the homologous proteins. Blast isn't necessarily the best tool for this. Have a look at my answers [here](https://biology.stackexchange.com/a/3766/1306) and [here](https://biology.stackexchange.com/a/19356/1306).  
> **username_0**: I am using local blast and blasting against virulence factor database found here http://www.mgc.ac.cn/VFs/main.htm.  
> **username_0**: "Do you mean tblastx or blastx" No blastp. I have extracted translated cds from annotated gbk files.  

---

## 1 answers

### Answer by username_2 on 2019-04-07. Score: 4

The answer is it depends. 40% pident with ~100% qcovs (assuming length of protein is not very small) tells you that the virulence factor (VF) and your prokka predicted protein are likely homologs, they belong to the same (or closely related) protein family. For some research studies, you might annotate your prokka proteins as 'putative' VFs.

On the other hand, in a clinical context, even 90% pident might not be enough evidence to say these predictions are real VFs. A single amino acid change alters the protein and therefore potentially the function. You could investigate bioinformtiaclly how the changes impact the protein structure and domains etc. Ideally validate it experimentally, e.g. for a new putative E. coli toxin, clone the protein and express it in a commensal E. coli strain and test the toxicity of the new strain.

In practise, think about what question you're asking and who you want to convince. Try numerous thresholds and see how robust your results are to threshold changes (4,000 VFs seems like a lot for a 'few' genomes). You could also try the VirulenceFinder database. When annotating antibiotic resistance genes, if you use 80% pident and qcovs thresholds with a minimum protein length then most researchers will accept your predicted annotations as 'conservative', maybe the VF community has similar arbitrary but pragmatic standards.


---

