<p>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.</p>

<p><a href="https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1005896" rel="nofollow noreferrer">https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1005896</a></p>

<p>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.</p>

CC BY-SA 4.0
2019-09-19T16:06:06.287Z
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!
jxx_fa
CC BY-SA 4.0
2019-09-18T15:39:11.087Z
2019-09-18T15:39:11.087Z
Jay Moore
<p>You can use <a href="https://bioconductor.org/packages/GSVA/" rel="nofollow noreferrer">GSVA</a> to summarize the information of your 8 genes and look for the time-serie change using limma or DESeq2.</p>

<p>If you have enough samples for each time point you could also do a weighted gene co-expression network analysis (<a href="https://horvath.genetics.ucla.edu/html/CoexpressionNetwork/Rpackages/WGCNA/Tutorials/" rel="nofollow noreferrer">WGCNA</a>), 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.</p>

<p>If you want to get a list of genes similar to your set of genes you can use <a href="https://bioconductor.org/packages/GOSemSim/" rel="nofollow noreferrer">GOSemSim</a> or <a href="https://bioconductor.org/packages/BioCor/" rel="nofollow noreferrer">BioCor</a> (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. </p>

<p>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).</p>

CC BY-SA 4.0
2019-09-16T09:23:06.990Z
2019-09-17T07:10:11.613Z
2019-09-17T07:10:11.613Z
llrs
<p>I have gene expression data (RNA-seq) for 30 different time points (from 0 to 60 min each 2 min).</p>

<p>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.</p>

<p>I have tried so far to do unsupervised clustering (<a href="https://www.bioconductor.org/packages/release/bioc/html/Mfuzz.html" rel="nofollow noreferrer">mfuzz</a>) 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.</p>

<p>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. </p>

<p><strong>So, is there a way to find genes with a time-series profile similar to a predefined set of genes?</strong></p>

CC BY-SA 4.0
2019-09-14T11:21:17.780Z
I'm not an expert but hierarchical clustering could be an alternative start
Dr. H. Lecter
<rna-seq><clustering><gene-expression>
Find most similar genes to a set of genes of interest in time series RNA-seq data
# Find most similar genes to a set of genes of interest in time series RNA-seq data

(Asked by: username_0 on 2019-09-13)

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](https://www.bioconductor.org/packages/release/bioc/html/Mfuzz.html)) 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?**

**Tags:** rna-seq, clustering, gene-expression
> **Comments:**
> **username_1**: I'm not an expert but hierarchical clustering could be an alternative start  

---

## 2 answers

### Answer by username_2 on 2019-09-18. Score: 1

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.

<https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1005896>

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.

> **Comments:**
> **username_0**: 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!  

---

### Answer by username_3 on 2019-09-16. Score: 1

You can use [GSVA](https://bioconductor.org/packages/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](https://horvath.genetics.ucla.edu/html/CoexpressionNetwork/Rpackages/WGCNA/Tutorials/)), 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](https://bioconductor.org/packages/GOSemSim/) or [BioCor](https://bioconductor.org/packages/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).


---

