This is a test version of Biostars. For the public version, visit https://www.biostars.org.
How to plot Volcano plots for time course experiment: Omics data?

I have a normalized data frame for a timecourse experiment (MS/MS). Samples are named as Genotype_Time_Replicate (e.g. AOX_1h_4). Each sample has 4 replicates for each time point. (>1000 Genes/AGIs)

Sample data

df <- structure(list(AGI = c("ATCG01240", "ATCG01310", "ATMG00070"), aox2_0h__1 = c(15.79105291, 14.82652303, 14.70630068), aox2_0h__2 = c(16.06494674, 14.50610036, 14.52189807), aox2_0h__3 = c(14.64596287, 14.73266459, 13.07143141), aox2_0h__4 = c(15.71713641, 15.15430026, 16.32190068 ), aox2_12h__1 = c(14.99030606, 15.08046949, 15.8317372), aox2_12h__2 = c(15.15569857, 14.98996474, 14.64862254), aox2_12h__3 = c(15.12144791, 14.90111092, 14.59618842), aox2_12h__4 = c(14.25648197, 15.09832061, 14.64442686), aox2_24h__1 = c(15.23997241, 14.80968391, 14.22573239 ), aox2_24h__2 = c(15.57551513, 14.94861669, 15.18808897), aox2_24h__3 = c(15.04928714, 14.83758685, 13.06948037), aox2_24h__4 = c(14.79035385, 14.93873234, 14.70402827), aox5_0h__1 = c(15.8245918, 14.9351844, 14.67678306), aox5_0h__2 = c(15.75108628, 14.85867002, 14.45704948 ), aox5_0h__3 = c(14.36545859, 14.79296855, 14.82177912), aox5_0h__4 = c(14.80626019, 13.43330964, 16.33482718), aox5_12h__1 = c(14.66327372, 15.22571466, 16.17761867), aox5_12h__2 = c(14.58089039, 14.98545497, 14.4331578), aox5_12h__3 = c(14.58091828, 14.86139511, 15.83898617 ), aox5_12h__4 = c(14.48097297, 15.1420725, 13.39369381), aox5_24h__1 = c(15.41855602, 14.9890092, 13.92629626), aox5_24h__2 = c(15.78386057, 15.19372889, 14.63254456), aox5_24h__3 = c(15.55321382, 14.82013321, 15.74324956), aox5_24h__4 = c(14.53085803, 15.12196994, 14.81028556 ), WT_0h__1 = c(14.0535031, 12.45484834, 14.89102226), WT_0h__2 = c(13.64720361, 15.07144643, 14.99836235), WT_0h__3 = c(14.28295759, 13.75283646, 14.98220861), WT_0h__4 = c(14.79637443, 15.1108037, 15.21711524 ), WT_12h__1 = c(15.05711898, 13.33689777, 14.81064042), WT_12h__2 = c(14.83846779, 13.62497318, 14.76356308), WT_12h__3 = c(14.77215863, 14.72814995, 13.0835214), WT_12h__4 = c(14.70685445, 14.98527337, 16.12727292), WT_24h__1 = c(15.43813077, 14.56918572, 14.92146565 ), WT_24h__2 = c(16.05986898, 14.70583866, 15.64566505), WT_24h__3 = c(14.87721853, 13.22461859, 16.34119942), WT_24h__4 = c(14.92822133, 14.74382383, 12.79146694)), class = "data.frame", row.names = c(NA, -3L))

How can I plot volcano plots for different comparisons;

i.e.

 ***'AOX2_0h__vs_WT_0h_', 
'AOX2_12h__vs_WT_12h_', 
'AOX2_24h__vs_WT_24h_', 
    'AOX5_0h__vs_WT_0h_', 
'AOX5_12h__vs_WT_12h_',
 'AOX5_24h__vs_WT_24h_', 
    'AOX2_0h__vs_AOX5_0h_', 
'AOX2_12h__vs_AOX5_12h_', 
'AOX2_24h__vs_AOX5_24h_'***

Also at the end, can I get a summary table of the statistics.

Could anyone help with this, please!

P.S: I did this in DEP package, but after I manually worked on the data frame (in Excel; after extract by df_import <- as.data.frame(assays(df) it's no more in (SummarizedExperiment) format to work with those functions.

r gene rna-seq proteomics

1 answer

A Volcano Plot just requires p-values and fold changes.

From where did you get your data? - it looks to be already normalised. Which program did you use?

Here is the data, for everyone else:

df
        AGI aox2_0h__1 aox2_0h__2 aox2_0h__3 aox2_0h__4 aox2_12h__1 aox2_12h__2
1 ATCG01240   15.79105   16.06495   14.64596   15.71714    14.99031    15.15570
2 ATCG01310   14.82652   14.50610   14.73266   15.15430    15.08047    14.98996
3 ATMG00070   14.70630   14.52190   13.07143   16.32190    15.83174    14.64862
  aox2_12h__3 aox2_12h__4 aox2_24h__1 aox2_24h__2 aox2_24h__3 aox2_24h__4
1    15.12145    14.25648    15.23997    15.57552    15.04929    14.79035
2    14.90111    15.09832    14.80968    14.94862    14.83759    14.93873
3    14.59619    14.64443    14.22573    15.18809    13.06948    14.70403
  aox5_0h__1 aox5_0h__2 aox5_0h__3 aox5_0h__4 aox5_12h__1 aox5_12h__2
1   15.82459   15.75109   14.36546   14.80626    14.66327    14.58089
2   14.93518   14.85867   14.79297   13.43331    15.22571    14.98545
3   14.67678   14.45705   14.82178   16.33483    16.17762    14.43316
  aox5_12h__3 aox5_12h__4 aox5_24h__1 aox5_24h__2 aox5_24h__3 aox5_24h__4
1    14.58092    14.48097    15.41856    15.78386    15.55321    14.53086
2    14.86140    15.14207    14.98901    15.19373    14.82013    15.12197
3    15.83899    13.39369    13.92630    14.63254    15.74325    14.81029
  WT_0h__1 WT_0h__2 WT_0h__3 WT_0h__4 WT_12h__1 WT_12h__2 WT_12h__3 WT_12h__4
1 14.05350 13.64720 14.28296 14.79637  15.05712  14.83847  14.77216  14.70685
2 12.45485 15.07145 13.75284 15.11080  13.33690  13.62497  14.72815  14.98527
3 14.89102 14.99836 14.98221 15.21712  14.81064  14.76356  13.08352  16.12727
  WT_24h__1 WT_24h__2 WT_24h__3 WT_24h__4
1  15.43813  16.05987  14.87722  14.92822
2  14.56919  14.70584  13.22462  14.74382
3  14.92147  15.64567  16.34120  12.79147

Hi Kevin,

Yes. These are my data and I've normalized. I used DEP Package in bioconductor.

Thank you, Kevin. Yes, I had a look at that. But I want to perform it in another standard statistical procedure. After data Imputation step from DEP package.

Okay, could just use non-parametric t-test, e.g., Wilcoxon Signed Rank test.

Log in to answer this question.