text: user123: I'm trying to understand the magnitude of batch effects in my RNA-seq samples, and I was wondering which expression units are more suitable to draw a PCA. I'm thinking of either counts or TPM, but things like rlog or vst could work too.
  Additionally, I'm wondering whether either of this units should be log-transformed first, to avoid high-abundance transcripts driving the PCA.
  
  user73: PCA works best when the input data is approximately normally distributed on each dimension. It would be a good idea to do some initial data quality checks to verify that this is the case (and transform the data appropriately if not), or at least verify that the data is approximately normally distributed in the aggregate.
  For looking at Illumina RNASeq data, what worked best for me (i.e. produced the most normal-looking data) was the following steps:
  
  Removing genes that had low raw counts in all samples
  Using DESeq's variance-stabilized transform (which transforms counts into a log-like distribution)
  Further normalising the VST values by dividing by the longest transcript length within each gene (which I call VSTPk)
  
  These steps are stated in a bit more detail in our Th2 paper that was published at the end of last year:
  http://jem.rupress.org/content/early/2016/12/01/jem.20160470#materials-methods
  
  user77: tldr: log transform counts and TPMs, but rlog/vst are preferred
  TPM should be log transformed to get more useful results. If you're using DESeq2 already (given the reference to rlog and vst, this seems likely), then please go ahead and use rlog or vst. That will give you more reasonable results than raw counts. If you're stuck with counts for some reason, then first use normalized counts so they're at least a bit more comparable and then log transform them so your highly expressed genes aren't driving everything.
  Edit: As an aside, if you know what the batch effect is (e.g., library prep. date), it's sometimes convenient to include that in your model. You can then assess the genes that are actually changed due to that, which is sometimes handy to know (e.g., which genes might be more/less prone to degradation).
  
original_text: 123: <p>I'm trying to understand the magnitude of batch effects in my RNA-seq samples, and I was wondering which expression units are more suitable to draw a PCA. I'm thinking of either <code>counts</code> or <code>TPM</code>, but things like <a href="http://bioconductor.org/packages/devel/bioc/vignettes/DESeq2/inst/doc/DESeq2.html#data-transformations-and-visualization" rel="noreferrer"><code>rlog</code> or <code>vst</code></a> could work too.</p>
  
  <p>Additionally, I'm wondering whether either of this units should be log-transformed first, to avoid high-abundance transcripts driving the PCA.</p>
   73: <p>PCA works best when the input data is approximately normally distributed on each dimension. It would be a good idea to do some initial data quality checks to verify that this is the case (and transform the data appropriately if not), or at least verify that the data is approximately normally distributed in the aggregate.</p>
  
  <p>For looking at Illumina RNASeq data, what worked best for me (i.e. produced the most normal-looking data) was the following steps:</p>
  
  <ol>
  <li>Removing genes that had low raw counts in all samples</li>
  <li>Using DESeq's variance-stabilized transform (which transforms counts into a log-like distribution)</li>
  <li>Further normalising the VST values by dividing by the longest transcript length within each gene (which I call VSTPk)</li>
  </ol>
  
  <p>These steps are stated in a bit more detail in our Th2 paper that was published at the end of last year:</p>
  
  <p><a href="http://jem.rupress.org/content/early/2016/12/01/jem.20160470#materials-methods" rel="nofollow noreferrer">http://jem.rupress.org/content/early/2016/12/01/jem.20160470#materials-methods</a></p>
   77: <p>tldr: log transform counts and TPMs, but rlog/vst are preferred</p>
  
  <p>TPM should be log transformed to get more useful results. If you're using DESeq2 already (given the reference to <code>rlog</code> and <code>vst</code>, this seems likely), then please go ahead and use <code>rlog</code> or <code>vst</code>. That will give you more reasonable results than raw counts. If you're stuck with counts for some reason, then first use normalized counts so they're at least a bit more comparable and then log transform them so your highly expressed genes aren't driving everything.</p>
  
  <p><strong>Edit</strong>: As an aside, if you know what the batch effect is (e.g., library prep. date), it's sometimes convenient to include that in your model. You can then assess the genes that are actually changed due to that, which is sometimes handy to know (e.g., which genes might be more/less prone to degradation).</p>
  