enhanced volcano , different -log10pvalue of the same gene
1
0
Entering edit mode
@d4a334e3
Last seen 11 months ago
Germany

I have the an annotated dataframe which contain the results of my Differential gene expression using Deseq2: I used this data frame for volcano plot where I got the gene that I have activated with -log10p-value = 200, I had to do some specification and coloring for some genes and so I have filtered my targeted genes from the same dataframe extracting the whole rows and I have plotted them again to get the same gene plotted in -log10P-value =40, Y axis was listed from FDR I looked up the FDR value of the same gene it was 0.0000000000, I tried to export the dataframe to excel it was 0.000000000000e+00 here I list the code

volcanoplot of all results from shrink.tab dataframe all genes of DGE

EnhancedVolcano(shrink.tab, x='logFC', lab = shrink.tab$Symbol,
                y= 'FDR', title = 'TG Vs WT wnt1 Volcano plot', 
                subtitle = 'differentially expressed genes',
                pCutoff = 0.05,
                FCcutoff = 1)

here I got a results where -log10Pvalue = 200

Sigsymb <- shrink.tab %>% dplyr::filter(grepl('Wnt|Dvl|Dkk1|Dkk2|Dkk3|Fzd|Lrp5|Lrp6|Axin|Ctnnb1', Symbol))
Sigsymb.l <- shrink.tab %>% dplyr::filter(grepl('Wnt|Dkk1|Dkk2|Dkk3', Symbol))%>% pull(Symbol)
Sigsymb.r <- shrink.tab %>% dplyr::filter(grepl('Fzd|Lrp5|Lrp6', Symbol))%>% pull(Symbol)
Sigsymb.s <- shrink.tab %>% dplyr::filter(grepl('Dvl|Axin|Ctnnb1', Symbol))%>% pull(Symbol)

keyvals.colour <- ifelse(Sigsymb$Symbol %in% Sigsymb.l , 'royalblue',
                         ifelse(Sigsymb$Symbol %in% Sigsymb.r, 'gold',
                                'darkred'))

keyvals.colour[is.na(keyvals.colour)] <- 'darkred'
names(keyvals.colour)[keyvals.colour == 'gold'] <-'receptors'
names(keyvals.colour)[keyvals.colour == 'darkred'] <- 'signaling protein'
names(keyvals.colour)[keyvals.colour == 'royalblue'] <-  'ligands'

EnhancedVolcano(Sigsymb, x='logFC', 
                lab = Sigsymb$Symbol[which(names(keyvals.colour) %in% c('receptors', 'ligands','signaling protein'))], 
                labSize = 6.0, colCustom = keyvals.colour,
                colAlpha = 1,
                legendPosition = 'right',
                legendLabSize = 16,
                legendIconSize = 4.0,
                drawConnectors = TRUE,
                y= 'FDR', title = 'TG Vs WT wnt1 Volcano plot', 
                subtitle = 'differentially expressed genes',
                pCutoff = 0.05, FCcutoff = 0) 

here I got the results where -log10Pvalue = 40

Could you please explain if there's any error during coding and if not what might be an explanation to what happened?

thank you in advance!

EnhancedVolcano RNASeqData DifferentialExpression • 1.6k views
ADD COMMENT
0
Entering edit mode

I don't fully understand your question, but it seems that during the processing of your output (using the dplyr functions) somehow the value 1e-200 is converted into all zero's (0.000000000000e+00).

EnhancedVolcano transforms p-values of zero to 10^-1 lower than lowest non-zero p-value.

See: https://github.com/kevinblighe/EnhancedVolcano/blob/7abca284367c4146524397e0bb056fc231a095df/R/EnhancedVolcano.R#L314-L335

ADD REPLY
0
Entering edit mode

yes now it's clear thank you!

ADD REPLY
0
Entering edit mode
Kevin Blighe ★ 4.0k
@kevin
Last seen 6 weeks ago
Republic of Ireland

Hi,

It's likely related to the following fact: some differential expression analysis programs in the R framework output p-values of 0, but these cannot be converted via -log10. Therefore, in EnhancedVolcano, I programmed it so that these p-values are converted to 10^-1 x the lowest non-zero p-value. Thus, if we have this situation:

  • EGFR, p=0

  • BRCA1, p=0.0001

, EGFR's p-value will be converted to 0.0001 * 10^-1 = 0.00001, prior to plotting.

The code in question is here: https://github.com/kevinblighe/EnhancedVolcano/blob/master/R/EnhancedVolcano.R#L321-L334

Kevin

ADD COMMENT
0
Entering edit mode

Yes perfect got it thank you!

ADD REPLY

Login before adding your answer.

Traffic: 1033 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