<p>I like using DESeq2. There's a great document written by the developers about how to process gene count tables and look at differential expression:</p>
<p><a href="https://bioconductor.org/packages/release/bioc/vignettes/DESeq2/inst/doc/DESeq2.html" rel="nofollow noreferrer">https://bioconductor.org/packages/release/bioc/vignettes/DESeq2/inst/doc/DESeq2.html</a></p>
<p>The document also mentions other tools that have similar approaches:</p>
<blockquote>
<p>Other Bioconductor packages with similar aims are <a href="http://bioconductor.org/packages/edgeR" rel="nofollow noreferrer">edgeR</a>, <a href="http://bioconductor.org/packages/limma" rel="nofollow noreferrer">limma</a>, <a href="http://bioconductor.org/packages/DSS" rel="nofollow noreferrer">DSS</a>, <a href="http://bioconductor.org/packages/EBSeq" rel="nofollow noreferrer">EBSeq</a>, and <a href="http://bioconductor.org/packages/baySeq" rel="nofollow noreferrer">baySeq</a>.</p>
</blockquote>

CC BY-SA 4.0
2020-10-30T20:04:22.463Z
2020-10-30T20:04:22.463Z
gringer
<p>Thanks for all your answers.
Although the pipeline packages would have been useful I was trying to normalise the data before analysing it later and so I used the bestnormalize package which looked like it did a pretty good job.</p>
<p><a href="https://i.sstatic.net/G1BB2.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/G1BB2.png" alt="enter image description here" /></a></p>
<p><a href="https://i.sstatic.net/aBWCx.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/aBWCx.png" alt="enter image description here" /></a></p>

CC BY-SA 4.0
2020-11-01T09:17:48.503Z
What is your goal with this analysis? Your RNA-Seq data looked relatively typical at a glance and I would really recommend not using a general normalization as you did. *A lot of research has gone into normalizing RNA-Seq* and you are at best hurting your analysis, at worst doing something outright wrong. Use - as recommended before - `edgeR`, `limma` or `DESeq2` unless you have a _good reason_ not to.
Bastian Schiffthaler
CC BY-SA 4.0
2020-11-01T09:19:30.263Z
See e.g. [Soneson & Delorenzi, 2013](https://bmcbioinformatics.biomedcentral.com/articles/10.1186/1471-2105-14-91)
Bastian Schiffthaler
CC BY-SA 4.0
2020-11-01T10:19:12.977Z
This is part of an assignment I have, I have used in the past edge software and agree it will do a better job but in this work I'm not meant to use any of the pipelines
Connor
CC BY-SA 4.0
2020-11-01T10:27:48.793Z
@Connor you should edit your question and include that information, so that people trying to help don't offer you a solution you can't use.
user438383
CC BY-SA 4.0
2020-11-01T08:50:26.107Z
2020-11-01T08:50:26.107Z
Connor
<p>Another approach, that does not replace the methods already mentions, but could be useful if you don't have raw counts to start with, or if you want to screen hundreds of genes, and you want to focus on the most interesting.</p>
<ol>
<li>either <code>log transform</code> or <code>zscale</code> your expression values</li>
<li>do a boxplot to see how your gene is expressed in the different tissues</li>
<li>run a non-parametric test to compare the distributions. I usually use a <code>kruskal.test</code> with multiple comparisons and a Mann-Whitney U test (<code>wilcox.test</code>) if I only have two groups.</li>
</ol>
<p>This should give you an idea if the expression of a gene is different between tissue types.</p>

CC BY-SA 4.0
2020-10-31T16:46:30.297Z
2020-10-31T16:46:30.297Z
fra
<p>My data frame compares the RNA-seq reads from many genes in different tissues.
The reads look as follows.</p>
<p><a href="https://i.sstatic.net/48HxQ.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/48HxQ.png" alt="enter image description here" /></a></p>
<p>I tried using log to make it better but still looks pretty skewed.</p>
<p><a href="https://i.sstatic.net/Fdrqy.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/Fdrqy.png" alt="enter image description here" /></a></p>
<p>Are there any better transformations/functions for this in R?</p>
<p>This is part of an assignment I have, I have used in the past edge software and agree it will do a better job but in this work I'm not meant to use any of the pipelines.</p>

CC BY-SA 4.0
2020-10-30T11:44:25.987Z
I assume that the eventual goal is differential expression or something along those line, in which case you're much better off using one of the many existing Bioconductor packages.
Devon Ryan
<r><rna-seq><homework>
I have really skewed RNA-seq data, what's the best way to normalise it? Preferably in R!
# I have really skewed RNA-seq data, what's the best way to normalise it? Preferably in R!

(Asked by: username_0 on 2020-10-30)

My data frame compares the RNA-seq reads from many genes in different tissues.
The reads look as follows.

[![enter image description here](https://i.sstatic.net/48HxQ.png)](https://i.sstatic.net/48HxQ.png)

I tried using log to make it better but still looks pretty skewed.

[![enter image description here](https://i.sstatic.net/Fdrqy.png)](https://i.sstatic.net/Fdrqy.png)

Are there any better transformations/functions for this in R?

This is part of an assignment I have, I have used in the past edge software and agree it will do a better job but in this work I'm not meant to use any of the pipelines.

**Tags:** r, rna-seq, homework
> **Comments:**
> **username_1**: I assume that the eventual goal is differential expression or something along those line, in which case you're much better off using one of the many existing Bioconductor packages.  

---

## 3 answers

### Answer by username_2 on 2020-10-30. Score: 2

I like using DESeq2. There's a great document written by the developers about how to process gene count tables and look at differential expression:

<https://bioconductor.org/packages/release/bioc/vignettes/DESeq2/inst/doc/DESeq2.html>

The document also mentions other tools that have similar approaches:

> Other Bioconductor packages with similar aims are [edgeR](http://bioconductor.org/packages/edgeR), [limma](http://bioconductor.org/packages/limma), [DSS](http://bioconductor.org/packages/DSS), [EBSeq](http://bioconductor.org/packages/EBSeq), and [baySeq](http://bioconductor.org/packages/baySeq).


---

### Answer by username_0 on 2020-11-01. Score: 1

Thanks for all your answers.
Although the pipeline packages would have been useful I was trying to normalise the data before analysing it later and so I used the bestnormalize package which looked like it did a pretty good job.

[![enter image description here](https://i.sstatic.net/G1BB2.png)](https://i.sstatic.net/G1BB2.png)

[![enter image description here](https://i.sstatic.net/aBWCx.png)](https://i.sstatic.net/aBWCx.png)

> **Comments:**
> **username_3**: What is your goal with this analysis? Your RNA-Seq data looked relatively typical at a glance and I would really recommend not using a general normalization as you did. *A lot of research has gone into normalizing RNA-Seq* and you are at best hurting your analysis, at worst doing something outright wrong. Use - as recommended before - `edgeR`, `limma` or `DESeq2` unless you have a _good reason_ not to.  
> **username_3**: See e.g. [Soneson & Delorenzi, 2013](https://bmcbioinformatics.biomedcentral.com/articles/10.1186/1471-2105-14-91)  
> **username_0**: This is part of an assignment I have, I have used in the past edge software and agree it will do a better job but in this work I'm not meant to use any of the pipelines  
> **username_4**: @Connor you should edit your question and include that information, so that people trying to help don't offer you a solution you can't use.  

---

### Answer by username_5 on 2020-10-31. Score: 1

Another approach, that does not replace the methods already mentions, but could be useful if you don't have raw counts to start with, or if you want to screen hundreds of genes, and you want to focus on the most interesting.

1. either `log transform` or `zscale` your expression values
2. do a boxplot to see how your gene is expressed in the different tissues
3. run a non-parametric test to compare the distributions. I usually use a `kruskal.test` with multiple comparisons and a Mann-Whitney U test (`wilcox.test`) if I only have two groups.

This should give you an idea if the expression of a gene is different between tissue types.


---

