32

First off, Don’t use RPKMs. They are truly deprecated because they’re confusing once it comes to paired-end reads. If anything, use FPKMs, which are mathematically the same but use a more correct name (do we count paired reads separately? No, we count fragments). Even better, use TPM (= transcripts per million), or an appropriate cross-library ...


19

In brief, the “genome” is the collection of all DNA present in the nucleus and the mitochondria of a somatic cell. The initial product of genome expression is the “transcriptome”, a collection of RNA molecules derived from those genes.


11

First of all, I would emphasize that "alignment-free" quantification tools like Salmon and Kallisto are not reference-free. The basic difference between them and more traditional aligners is that they do not report a specific position (either in a genome or transcriptome) to which a read maps. However, their overall purpose is still to quantify the ...


9

RPKM is defined as: RPKM = numberOfReads / ( geneLength/1000 * totalNumReads/1,000,000 ) As you can see, you need to have gene lengths for every gene. Let's say geneLength is a vector which have the same number of rows as your data.frame, and every value of the vector corresponds to a gene (row) in expression. expression.rpkm <- data.frame(sapply(...


9

You may consider using RUVSeq. Here is an excerpt from the 2013 Nature Biotechnology publication: We evaluate the performance of the External RNA Control Consortium (ERCC) spike-in controls and investigate the possibility of using them directly for normalization. We show that the spike-ins are not reliable enough to be used in standard global-scaling or ...


7

I wouldn't say Kallisto (or Salmon) are reference-free. They use a transcriptome as reference anda concept called pseudo-alignment which greatly speed up the process of assigning your reads to a transcript. That said, both approaches of (i) mapping against a reference genome (what you called alignment workflow ) and (ii) mapping against a reference ...


6

They are two very different things. Your genome is a large section of about 3 billion DNA nucleotide bases. It has no concept of exon and introns. Transcriptome is a study of transcriptions. You have introns and exons. We can now talk about alternative splicing and gene expression. You can think your genome is like a cooking recipe. While it's good to have ...


6

The read length is irrelevant when calculating the mean coverage statistic. It's simply the total number of bases sequenced divided by the target Xome length. In the example provided in the question, $L*N$ is equivalently expressed as $\sum^{N} l_x$, or the total length of sequenced reads. For equal-length reads, this is easier to calculate as number of ...


6

I've never tried this myself, so I don't know how easy this is... One option would be to start with GMAP, which is meant to align whole transcripts against the genome. The really nice thing about this is that it can directly produce GFF3 files. You can then use that with your Ensembl GTF with cuffcompare or whatever the equivalent is in stringTie. You ...


6

On most coding genes (with the exception of replication dependent histone genes), Transcripts (as opposed to transcription) are terminated by cleavage polyadenylation sites, where the growing transcript is cleaved by a protein complex and the poly-A tail. However, PolII continues to transcribe until it is terminated by torpedo termination (see here). ...


6

There are a variety of reasons people use gene-level quantitations. Transcript-level differences are difficult to biologically interpret. Let's be honest, few groups are likely to put in the work required to determine what these might mean. Most genes have at least some level of characterization, so it's much more biologically tractable to think in terms of ...


6

Transcript abundance quantification is a tricky topic since a read often could belong to several transcripts, so any "count" is a best guess as to which transcript it actually originates from. That being said, there are tools that can help you here: salmon (as you mentioned) to quanitfy. Run it with --numGibbsSamples 50 (or higher if your computer ...


5

Thanks for your interest in RapMap. At that time we were using flux simulator for simulating read sequence data. We used the genome and gtf file together as an input to flux. I dug into the scripts and got hold of the gtf link ftp://ftp.ensembl.org/pub/release-80/gtf/homo_sapiens/Homo_sapiens.GRCh38.80.gtf.gz, and the genome file link ftp://ftp.ensembl....


5

The general idea behind a run-on fragment is that it's background noise. This derives from an open area of the genome that's next to an area that's actually being transcribed. Thus, all of the machinery for transcription is already present, so if the region adopts a bit more of an open conformation then that machinery can sporadically bind and start ...


5

As per my answer to @_julien_roux on twitter: Trying to find novel transcripts within the context of an existing annotation is much less straightforward. You probably need to do a "genome-guided assembly" with Trinity and PASA: http://pasapipeline.github.io/#A_ComprehensiveTranscriptome We did something similar in much simpler organisms in our recent paper:...


5

A few comments: Never use N50 as a metric especially for transcriptomes. It has some semblance of relevance for genome assembly, but all that is void for a transcriptome with inherently dynamic lengths. At the end of your IsoSeq pipeline, you should have (ideally) full-length transcripts. Have you considered that you don't miss much in your IsoSeq data? The ...


4

There are two potential sources of bias in this design. We cannot distinguish correlation from causation. Imagine two cases. In the first, the disease progression is inducing immune response. Later stages will be associated with the higher gene expression levels. In the second scenario, the disease is caused by overexpression of a gene. Later stages will ...


4

We have added ERCC spike-ins to all our RNASeq data, just in case other people might find it useful in the future. However, I have never used it in my own analyses because I can't think of a reasonable way that it could be used. The typical recommendation for ERCC is to add it in proportion to the input RNA amount, but that makes an assumption that total ...


4

I will take the liberty of giving one possible answers to my own question – but I’m very interested in other answers. One analysis type that such data enables is the analysis of transcript switches with predicted potential consequences. I myself have recently developed such a tool called IsoformSwitchAnalyzeR. IsoformSwitchAnalyzeR enables statistical ...


4

Your problem is caused by using the transcriptome fasta file rather than the genome fasta file. You've already given it transcriptome information with genome_genes.filtered.gtf, it needs the genomic sequence to go along with that. As an aside, your GTF filtering command is unlikely to be useful unless you have a Gencode or Ensembl GTF for human. Have a look ...


4

To add to the list that Devon Ryan outlined (or perhaps to elaborate on point 2?): Although Salmon/Kallisto/RSEM are the more accurate in their transcript quantification than the methods they superseded, transcript level quantification is still not as accurate as gene level quantification (see the tximport paper, which would also be the tool i'd recommend ...


4

The output of gffcompare includes several files per run (just like cuffcompare). Example for a run: $ ls cuffcmp.* | sed 's/\t/\n/' cuffcmp.combined.gtf cuffcmp.loci cuffcmp.output.gtf.refmap cuffcmp.output.gtf.tmap cuffcmp.stats cuffcmp.tracking From my experience, the easiest file to manipulate is the tmap file: Tab delimited file lists the most ...


4

So, I think there are a few potential options here. Alevin is using selective-alignment internally to determine the mappings for the reads. So, even if you have a k-mer supporting the mapping, if you have gibberish for the rest of the read, the mapping score is going to be very poor and you're not going to recover that mapping locus. There are some ...


3

Yes, you can use limma for this mixed model approach. Like you suggest, the random effect (persons) can be put in duplicateCorrelation(). Here is a similar example with RNAseq data, on bioconductor support site.


3

tldr: Remove the $ from the command. I imagine you're literally typing $hisat2, where you mean to instead type hisat2. The $ is just meant to show the end of the command prompt. If you actually type $hisat2, you're not executing the hisat2 program, but whatever the $hisat2 variable is set to. Since it's likely not set to anything, it's just ignored. For ...


3

It's really a misnomer to call StringTie's non-reference based mode 'de-novo.' It's still using the reference genome sequence to guide the transcript assembly, it's just not using the reference annotation. Trinity is truly de-novo in that it it assembles the transcript from the overlap of the reads without mapping them to a reference genome sequence. If ...


3

Your intuition is correct. stringTie is just looking at clumps of alignments and how they might relate to each other (either due to spliced alignments or proximity). Trinity is doing the more computationally difficult task of finding parts of reads that overlap with each other and trying to link them together into longer sequences. Whether it makes sense to ...


3

You are looking for a way to compare expression profiles between cell types, and your data is counts of genes expressed per cell. Your issue is that the data is highly dimensional. It has as many dimensions as you have genes. To be able find useful information, you must reduce these dimensions using a statistical technique such as Principal COmponents ...


3

I am not sure if this has been done, is common, or are research lines, but here is what I think can be done with transcripts' differences (aside from comparing the change of the expression of each transcript): Having the different transcripts, enables us to study also the relation between transcripts, which are co-expressed together or differently co-...


3

As you've suggested, CD-HIT works for reducing transcript numbers. We used a mixture of expression-based filtering and CD-HIT for reducing transcript counts for our genome-guided transcriptome assembly. This reduced numbers by a lot, without much change in BUSCO scores: Map RNA-seq reads to Trinity-generated transcripts using Salmon Use the expression of ...


Only top voted, non community-wiki answers of a minimum length are eligible