SEQanswers

Go Back   SEQanswers > Bioinformatics > Bioinformatics



Similar Threads
Thread Thread Starter Forum Replies Last Post
riboPicker for rRNA removal from sequence data Polecat Bioinformatics 1 10-10-2014 01:50 AM

Reply
 
Thread Tools
Old 02-03-2017, 09:03 PM   #1
jha.shweta80
Junior Member
 
Location: India

Join Date: Feb 2017
Posts: 2
Default removal of organelle data

Is removal of organelle data necessary before determining the level of duplication in transcriptomics data and their removal? Why it is necessary?
jha.shweta80 is offline   Reply With Quote
Old 02-04-2017, 10:20 AM   #2
Brian Bushnell
Super Moderator
 
Location: Walnut Creek, CA

Join Date: Jan 2014
Posts: 2,695
Default

Removal of organelle reads is not necessary. But it can make your job more efficient if a huge amount of your reads came from organelles that you don't care about.
Brian Bushnell is offline   Reply With Quote
Old 02-05-2017, 09:10 PM   #3
jha.shweta80
Junior Member
 
Location: India

Join Date: Feb 2017
Posts: 2
Default

Quote:
Originally Posted by Brian Bushnell View Post
Removal of organelle reads is not necessary. But it can make your job more efficient if a huge amount of your reads came from organelles that you don't care about.
Thanks for reply. Does this removal affect the final analysis for differential gene expression? I want to analyze organelle gene expression also, along with nuclear genes.
jha.shweta80 is offline   Reply With Quote
Old 02-05-2017, 10:23 PM   #4
Brian Bushnell
Super Moderator
 
Location: Walnut Creek, CA

Join Date: Jan 2014
Posts: 2,695
Default

If you are interested in differential expression of organelle genes, then clearly you should not remove them! If you wish to know the overall expression of both nuclear and organelle genes, and consider RNA content a proxy for their activity, it does not make sense to me to process them independently. But, maybe a biologist will chime in and correct me on that; perhaps the expression of nuclear and organelle transcripts are very different and should be processed independently.

My prior answer that "removal of organelle reads is not necessary" was based on the fact that chloroplast and mitochondrial reads don't pose much of a problem to my institution - it's convenient, but not necessary (and usually very difficult), to separate organelle and nuclear reads prior to assembly. For RNA-seq, it seems to me a waste of time and counterproductive if you want to analyze differential expression of both nuclear and organelle genes, but again, I'll defer to biologists.
Brian Bushnell is offline   Reply With Quote
Old 08-08-2017, 12:34 PM   #5
gruberjd
Member
 
Location: Michigan

Join Date: Nov 2011
Posts: 13
Default best practices for organellar ID and purging?

Hi Brian-- Any tips on pipelines or documents that describe the best way to evaluate (and possibly purge) the organellar content of a batch of reads? (Googling didn't get me as far as I was expecting it would.) It seems to be a problem of variable magnitude and, as you say, sometimes has a big impact on the results of using the non-organellar content.

Thanks! -- Jonathan

Quote:
Originally Posted by Brian Bushnell View Post
If you are interested in differential expression of organelle genes, then clearly you should not remove them! If you wish to know the overall expression of both nuclear and organelle genes, and consider RNA content a proxy for their activity, it does not make sense to me to process them independently. But, maybe a biologist will chime in and correct me on that; perhaps the expression of nuclear and organelle transcripts are very different and should be processed independently.

My prior answer that "removal of organelle reads is not necessary" was based on the fact that chloroplast and mitochondrial reads don't pose much of a problem to my institution - it's convenient, but not necessary (and usually very difficult), to separate organelle and nuclear reads prior to assembly. For RNA-seq, it seems to me a waste of time and counterproductive if you want to analyze differential expression of both nuclear and organelle genes, but again, I'll defer to biologists.
gruberjd is offline   Reply With Quote
Old 08-09-2017, 02:23 PM   #6
Brian Bushnell
Super Moderator
 
Location: Walnut Creek, CA

Join Date: Jan 2014
Posts: 2,695
Default

If you have organelle references and a main genome reference, you can try using BBMap's BBSplit or Seal to fractionate the reads between them or generate stats about how many reads go with each one. BBSplit is probably more accurate and alignment-based, while Seal is faster and kmer-based. Example:

Code:
bbsplit.sh ref=genome.fa,mito.fa,chloro.fa in=reads.fq basename=out_%.fq refstats=refstats.txt
The weakness of the approach is that some genes (such as ribosomes) may be duplicated between the organelles and main genome, in which case you can't cleanly separate them. But it should work for the majority of the genome.

If you don't have references, you can still attempt fractionation based on kmer-coverage, at least for mitochondrial reads. I've done this successfully to assemble fungal mitochondria from raw fungal reads like this:

Code:
#First link reference as ref.fa and reads as reads.fq.gz

kmercountexact.sh in=reads.fq.gz khist=khist_raw.txt peaks=peaks_raw.txt

primary=`grep "haploid_fold_coverage" peaks_raw.txt | sed "s/^.*\t//g"`
cutoff=$(( $primary * 3 ))

bbnorm.sh in=reads.fq.gz out=highpass.fq.gz pigz passes=1 bits=16 min=$cutoff target=9999999
reformat.sh in=highpass.fq.gz out=highpass_gc.fq.gz maxgc=0.45

kmercountexact.sh in=highpass_gc.fq.gz khist=khist_100.txt k=100 peaks=peaks_100.txt smooth ow smoothradius=1 maxradius=1000 progressivemult=1.06 maxpeaks=16 prefilter=2

mitopeak=`grep "main_peak" peaks_100.txt | sed "s/^.*\t//g"`

upper=$((mitopeak * 6 / 3))
lower=$((mitopeak * 3 / 7))
mcs=$((mitopeak * 3 / 4))
mincov=$((mitopeak * 2 / 3))

tadwrapper.sh in=highpass_gc.fq.gz out=contigs_intermediate_%.fa k=78,100,120 outfinal=contigs_intermediate.fa prefilter=2 mincr=$lower maxcr=$upper mcs=$mcs mincov=$mincov

bbduk.sh in=highpass.fq.gz ref=contigs_intermediate.fa outm=bbd005.fq.gz k=31 mm=f mkf=0.05

tadpole.sh in=bbd005.fq.gz out=contigs_bbd.fa prefilter=2 mincr=$((mitopeak * 3 / 8)) maxcr=$((upper * 2)) mcs=$mcs mincov=$mincov k=100 bm1=6

ln -s contigs_bbd.fa contigs.fa
This is an attempt at an automatic solution to use for a large number of libraries, which usually worked pretty well, but manually deciding the coverage boundaries of the main peak might work better if you only have a single library to deal with. Not sure if chloroplasts have enough copies to make their peak stand out clearly from main genome repeats.

Last edited by Brian Bushnell; 08-09-2017 at 03:52 PM.
Brian Bushnell is offline   Reply With Quote
Reply

Tags
duplicate removal, organelle data removal, transcriptomics

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off




All times are GMT -8. The time now is 06:49 PM.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Single Sign On provided by vBSSO