I have gene expression data (RNA-seq) for 30 different time points (from 0 to 60 min each 2 min).

I have a set of 8 genes that behave similarly (although not identically) and I want to find the top X genes that behave most similarly to this set of genes in terms of their time-series expression profile.

I have tried so far to do unsupervised clustering (mfuzz) and check for genes that lie in the same cluster as my genes of interest. However, this approach relies on specifying a predefined number of clusters and since these genes are not exactly equal, sometimes they don't fall in the same cluster, depending on initial parameters.

Because of this, I have thought about doing it the other way around and look for genes similar to my set of genes. However, I haven't found any method/resource for doing that so far.

So, is there a way to find genes with a time-series profile similar to a predefined set of genes?

  • 1
    $\begingroup$ I'm not an expert but hierarchical clustering could be an alternative start $\endgroup$ – Dr. H. Lecter Sep 14 '19 at 11:21

You can use GSVA to summarize the information of your 8 genes and look for the time-serie change using limma or DESeq2.

If you have enough samples for each time point you could also do a weighted gene co-expression network analysis (WGCNA), and see if those clusters in each time point are co-expressed similarly (But it can be tricky and you will need to define a lower bound of the clusters to 8 or so). You could also divide your time series in two point at the beginning and at the end, and see if there are differences or not.

If you want to get a list of genes similar to your set of genes you can use GOSemSim or BioCor (Disclaimer I am a contributor to the first, and author of the second), which can calculate similarities between genes based on the gene ontology and on pathways respectively. For this approach you'll need to calculate the similarity between all the genes and then select those that are closer to your genes of interest.

I'm not aware of any database/website with time-series profiles of genes (I assume that if there would be any would be on humans or some simple model organism).


DPGP (McDowell et al, 2018) uses a non-parametric clustering method, so should find clusters without you needing to specify cluster size or number of clusters. It is more or less explicitly designed for clustering timeseries gene expression data to find clusters of co-expressed genes.


SplineCluster (Heard et al. 2006) uses a different method, but for a similar purpose and in a similarly non-parametric way, and worked well when we used it a few years ago with microarray data.

  • $\begingroup$ I already have a tool for doing the clustering (mFuzz). What I am looking for is to take 8 genes and look for the top X most similar genes to those genes. But I will try this DPGP, seems pretty good for the data I have! $\endgroup$ – plat Sep 19 '19 at 16:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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