Does anyone have a good method to find a signature where you combine the expression from multiple genes to predict a specific condition. Assume you have performed sequencing of 48 cancer samples and 48 normal sample. Then find a combination of genes that predicts the cancer samples, using for instance AUC.

  • 1
    $\begingroup$ One approach is to use Elastic Net regression, I've seen lots of examples in the literature, though the methods a pretty thin in terms of implementation $\endgroup$
    – emilliman5
    Oct 9, 2017 at 19:10
  • $\begingroup$ I think that with cancer that is quite diverse and with this low number of samples you reproduce whatever gene signature in a larger cohort of samples. (Calculate the power of your study) $\endgroup$
    – llrs
    Oct 10, 2017 at 8:30
  • $\begingroup$ Rather than going with a specific (bioinformatic) package you could turn to more general machine learning approaches. For similar problems of mine (with much fewer samples), default implementations of Random Forests (which will also provide importance of features / genes) often yield perfect or near-perfect classification. Note that Random Forests have many favorable characteristics for working with genes, and also form the mechanistic basis of the best-performing (competition-winning) tools for the prediction of gene regulatory networks. $\endgroup$
    – tsttst
    Oct 12, 2017 at 2:47

2 Answers 2


There are many different ways of doing it! I would recomend the well established R pacakge CARET which have a whole chapter and many build in functions for it.

In addition you probably want to do some low-level filtering based on variance and fold changes (or the combination - ad DE analysis) to get the number of features down before progressing to the more advanced methods.


I have a method for doing this that uses a MCMC algorithm originally designed for population genetics (via the structure program) to generate a statistic between 0 and 1 indicating genetic risk. This needs the use of reference populations for cases and controls that the query individuals are added to for classification. I use T1D as an example. My methods paper is not peer-reviewed, and probably doesn't go into sufficient detail for what you are looking for, but at least indicates one way this can be done:


Based on the work I've done with this, using 48 cases and 48 controls with a very specifically defined type of cancer should be sufficient to create a generalised signature from human populations. If a generic cancer profile is needed, the populations are not representative of a general human population, or there are some cases in the control group, then things get trickier and require more individuals. On the other hand, 1500 per group is probably overkill.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.