Hi and thank you. would you please explain more what you mean by "over all GO terms" here? as I have collected GO terms just for my 200 DEGs. Thanks
Hi, I want to use REVIGO TreeMap in order to summarize and visualize the GO terms related to my Differentially Expressed Genes/transcripts (DEGs).
I found the GO term for them using Blast2GO.
But it seems that REVIGO needs "pValue"s, which is not included in the .annot file exported from Blast2GO.
How can I add pValue to my GO terms?
Best
NOTE: Blast2GO results example
TRINITY_DN187708_c5_g2_i7 GO:0005515 diphthine methyltransferase
TRINITY_DN190758_c1_g1_i9 GO:0016307 phosphatidylinositol 4-phosphate 5-kinase type-1 alpha
TRINITY_DN190758_c1_g1_i9 GO:0006897
TRINITY_DN190758_c1_g1_i9 GO:0046854
2 answers
Hi,
You need to perform enrichment analysis of GO terms for DEGs over all GO terms to get p-values (can use BINGO). You can use just GO terms without p-values also but REVIGO will not give weightage based on p-values.
GO terms to all genes of you model organism.
Thank you.
I am working on a non model fish. I have 500K transcripts and 200 of them are DEG which I collect GO for them using Blast2GO. The closest model animal to my sample is is zebra fish.
Should I use GO of zebra fish as some kind of background? where can I collect all Danio rerio GO terms?
Easy way is to map your DEGs to zebrafish genes (find orthologues) and then you can use many of the tools which have zebrafish gene annotations (eg. clusterProfiler)
Perhaps you can use all the mapped GO terms as your background and the GO associated to DEGs to test for enrichment using a hypergeometric or fisher's exact test.
But as Puli said you can use Revigo without p-values.
#after running maker merged gff file was used and first round of filtration was carried out by AED score cutoff.
awk '{if($3=="mRNA")print$0}' ./base.all.gff |grep -v "trnascan"|grep "est2genome"| grep "mRNA-1"| grep "_AED=0.00"|grep "Name"|awk '{split($9,a,";");print a[2]}'|awk '{split($1,a,"=");print a[2]}'> ./for_Augustus/MAKER_filter1_list
grep -Fwf ./for_Augustus/MAKER_filter1_list ./base.all.gff > ./for_Augustus/MAKER_filter1.gff
#remove mono exonic genes
cat ./for_Augustus/MAKER_filter1.gff |awk '{split($9,a,";");print$3,a[2]}'|awk '{split($2,b,"=");print$1,b[2]}'| awk 'a ~ $0{print}; {a=$0}'|grep "^exon"| awk '{split($2,c,"-mRNA");print c[1]}'| sort -u > ./for_Augustus/non_monoExonic_MAKER_filter2.gff_list
grep -Fwf ./for_Augustus/non_monoExonic_MAKER_filter2.gff_list ./for_Augustus/MAKER_filter2.gff > ./for_Augustus/MAKER_filter3.gff
# get both three prime and five prime utr containing genes
cat ./for_Augustus/MAKER_filter3.gff |awk '/three_prime_UTR/ {print$0}' |awk '{split($9,a,";");print$3,a[2]}'|awk '{split($2,b,"=");print$1,b[2]}'| awk '{split($2,c,"-mRNA");print c[1]}'| sort -u > ./for_Augustus/three_prime_utr_positive_gene_list
cat ./for_Augustus/MAKER_filter3.gff |awk '/five_prime_UTR/ {print$0}' |awk '{split($9,a,";");print$3,a[2]}'|awk '{split($2,b,"=");print$1,b[2]}'| awk '{split($2,c,"-mRNA");print c[1]}'| sort -u > ./for_Augustus/five_prime_utr_positive_gene_list
sort ./for_Augustus/three_prime_utr_positive_gene_list ./for_Augustus/five_prime_utr_positive_gene_list |uniq -d > ./for_Augustus/five_three_prime_utr_positive_gene_list
grep -Fwf ./for_Augustus/five_three_prime_utr_positive_gene_list ./for_Augustus/MAKER_filter3.gff > ./for_Augustus/MAKER_filter4.gff
# remove utrs from gff (optional, but I will suggest for running without errors)
awk '!/three_prime_UTR|five_prime_UTR/ {print$0}' ./MAKER_filter4_mod.gff > ./MAKER_filter4_mod_withoutUTR.gff
#convert to gb format (scripts are in augustus)
./scripts/gff2gbSmallDNA.pl ./MAKER_filter4_mod_withoutUTR.gff /genome.fasta 10 ./MAKER_filter4_mod_withoutUTR.gb
# split test and training set (~1:5) (this is example, modify accordingly)
./scripts/randomSplit.pl ./MAKER_filter4_mod_withoutUTR.gb 200
grep -c LOCUS ./MAKER_filter4_mod_withoutUTR.gb*
./MAKER_filter4_mod_withoutUTR.gb:1279
./MAKER_filter4_mod_withoutUTR.gb.test:200
./MAKER_filter4_mod_withoutUTR.gb.train:1079
# create new file for your species (of interest)
./scripts/new_species.pl --species=species
#etrain
./bin/etraining --species=species ./MAKER_filter4_mod_withoutUTR.gb.train
#test
./bin/augustus --species=species ./MAKER_filter4_mod_withoutUTR.gb.test | tee firsttest.out
#optimize
./scripts/optimize_augustus.pl --cpus=10 --species=species ./MAKER_filter4_mod_withoutUTR.gb.train --metapars=./config/species/species/species_metapars.cfg
#busco
./scripts/run_BUSCO.py -c 10 --long -sp species -o species_test -i /genome.fasta -l /BUSCO/busco/data/eukaryota_odb9 -m genome
Let me know if you face any problem with running these lines.
Best
This is posted by mistake, ignore it.
Log in to answer this question.