I have done proteomics and I have obtained genes with ratios. As an small example you can see my data below

Gene    Control1     Control2   Control3    Treated1    Treated2    Treated3
pps-1   324680000   211350000   356350000   269770000   258080000   292830000
R11A8.7 477490000   610780000   539550000   533590000   530810000   578290000
ugt-21  105080000   103430000   74137000    78915000    42381000    31415000
spp-18  1042800000  615030000   332720000   538340000   448280000   412310000

Now My question is that I have Three controls and Three Treated, Control has two biological replicate and Treated has two biological replicate

I am trying to find the pathways which the list of my genes activate it. I use IPA which is a tool for pathway analysis

How can I calculate the fold change for it? If I use the 6 values, IPA will give me 6 different results and then interpretation will lead me to hell.

I appreciate any help.

  • $\begingroup$ Fold change is usually defined as the ratio of the mean values for the two groups. It's pretty trivial to compute in any langauge. I think you're mainly after the R code for doing this on each row of the matrix? I don't think this question is suitable for Biology SE, but check this page: stackoverflow.com/questions/9490485/… Do that for you two groups and then simply take the ratio. $\endgroup$
    – Roland
    Commented Aug 18, 2016 at 11:38
  • $\begingroup$ @Roland I am pretty good at few languages including R. I don't have problem with how to do it, I want to know if I do it in this way is right or not. If I had only one control and one treated, I knew how to calculate the fold change but when I have replicate, I don't know what is best to do $\endgroup$
    – Nik Bernou
    Commented Aug 18, 2016 at 11:45
  • $\begingroup$ I posted a question here stats.stackexchange.com/questions/230484/… $\endgroup$
    – Nik Bernou
    Commented Aug 18, 2016 at 12:19
  • $\begingroup$ How does your data extraction method work? If it produces compositionally constrained data, then everything is far more complicated. $\endgroup$ Commented Aug 19, 2016 at 7:36
  • $\begingroup$ @Eli Korvigo what do you mean with compositionally constrained datacan you please explain ? $\endgroup$
    – Nik Bernou
    Commented Aug 19, 2016 at 8:59

2 Answers 2


Calculating fold change is pretty straightforward but you cannot do one on one comparison because they (control and treated) are not really paired (same sample). That's why IPA gives you six results (FC for each pair). However, you can calculate fold change between two genes because they are from the same sample. Note that fold changes are quite dangerous and can lead to misinterpretation of data (for example 1/2 would be same as 100/200). You should use them cautiously.

I think, in this case, you can simply apply a t-test. This will tell you if your two groups i.e. treated and control are significantly different from each other. You would not be calculating fold changes here. If you had more number of groups then you can go for one-way ANOVA.

I am not sure what output you really want after the analysis but I think the main goal is to say that control is different from treated.

Since you have multiple genes (variables) you can either go for a multivariate t-test, which will tell you if the control is overall different from treated, or many univariate tests which will tell you how each gene differs between the two groups. There are some methods such as Bonferroni correction which can be used to improve the prediction of multivariate tests.

When you have established that a certain gene is differentially expressed, using t-test, you can report the fold change of the averages.

  • $\begingroup$ ♦ I agree with gene set enrichment you explained. when you say you can report the fold change of the averages. do you mean that I should take average of my replicate over control and take average of my replicate over treated? then divide them together ? $\endgroup$
    – Nik Bernou
    Commented Aug 18, 2016 at 11:25
  • $\begingroup$ @NikBernou You can calculate FC but you'll get 6 because of the different pairs which would not tell you anything meaningful. To work around that you can calculate the average of the replicates and report the FC between them (divide). However, before doing that make sure that this is meaningful by doing the statistical test. For the others that were not different as per t-test, just leave them or report an FC of 1 (since they are there is no significant difference between them). Am I clear? $\endgroup$
    Commented Aug 18, 2016 at 11:39
  • $\begingroup$ ♦ I am really sorry for asking too many questions. what you try to say is I select the upregulated genes (those that are statistically significantly different from control than treated. Then I discard the rest. Then I take average between group and average between treated and then divide treated to control. Is it what you are telling me? $\endgroup$
    – Nik Bernou
    Commented Aug 18, 2016 at 11:42
  • $\begingroup$ @NikBernou yes. Take average of control, take average of treated and divide them (only for cases that are statistically significantly different). $\endgroup$
    Commented Aug 18, 2016 at 11:44
  • $\begingroup$ ♦ I see, what will happen if I do this for all? I think replicate suppose to be more or less the same value but taking into account the environmental changes during measurement, no? $\endgroup$
    – Nik Bernou
    Commented Aug 18, 2016 at 11:46

While I do not have any experience with IPA, I routinely face this problem.

How do you analyse separate biological replicates?

One way to approach the problem is to merge the biological replicates.

There are several methods,

To do this, you can show a pearson or spearman correlation. If you have experience in R, it is a simple task of applying the function cor.

I do not use excel for such tasks, but you can check out this excel tutorial which covers correlation in Excel.

The second and harder method is to show the clustering of the replicates, using one of the many clustering methods out there. For this the easiest way I know is heatmap2 from the gplots package, which uses hclust for hierarchical clustering. This method will produce a heatmap with a dendogram specifying the relation between the replicates. Check the package link for the pdf containing details on the heatmap.2 function and how to use it.

I would go with correlation since it hardly takes 10 minutes. Having shown the correlation between replicates, you can then merge the replicates by taking the average of the replicates.

I do not know if IPA has a way for dealing with replicates

  • $\begingroup$ Hi dear, thanks for your comment. Actually you don't need to know IPA. what i want is to be able to calculate FoldChange. is it possible to make an example in R ? you can use random values to generate 6 columns of data ? is it possible ? $\endgroup$
    – Nik Bernou
    Commented Aug 18, 2016 at 9:43
  • $\begingroup$ Having shown the correlation between replicates, you can then merge the replicates by taking the average of the replicates, what will happen to those that are not highly correlated ? why should I do that ? can you please give me details explanation so that I understand your mythology ? $\endgroup$
    – Nik Bernou
    Commented Aug 18, 2016 at 9:45
  • $\begingroup$ correlation shows you how well the samples/replicates correlate among themselves, before merging replicates this step is required to show that you are not introducing variations within the merged dataset. If you introduce a bias by merging that will lead to false statistical inference. You do not want to do that, if the replicates correlate well then values corresponding to genes can averaged between replicates. $\endgroup$ Commented Aug 18, 2016 at 9:50
  • $\begingroup$ I got your point , you have one like already thanks for highlighting it !!!! would you mind to give me an example in R? $\endgroup$
    – Nik Bernou
    Commented Aug 18, 2016 at 9:53

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .