A guide to small RNA analysis using Seqpac
Introduction | Quick guide | Overview | The Seqpac workflow | Quick start | Example data | Making a PAC object | Before making a PAC object (merge_lanes) | Generating a count table (make_counts) | Internal trimming | External trimming | Already trimmed fastq | Optimizing for low-end systems and challenging data | Outputs from make_counts | Evidence filtering | Generate the phenotype table (make_pheno) | Generating the PAC object (make_PAC) | Preprocessing the PAC object | Targeting objects | Filtering | Extracts sequences with >=5 counts in 100% of samples within each stage | Storage of processed data in PAC | Normalization | Generate annotations | Quick guide of the annotation workflow | Fasta references | The reannotation workflow | The functions in the reanno workflow | Reannotation in action | Genome mapping | Path to your output folder | or a temp folder | Look up the your own Bowtie indexed reference genomes (fasta) | For testing, you can use a small mycoplasma genome provided with Seqpac | But remember to provide single genomes as a named list anyway. | The name will be used to keep track of your genome. | Output as separate table | Output merged with provided PAC object | Example of original reference name annotations | Finished genome annotation | Currently classification does not discriminate | Set the hierarchy and remember that it is order sensitive. | Here: S5_rRNA >> Other_rRNA >> mt:tRNA >> tRNA | Remember to use 'regular expressions' if you wish to catch all: | What happens if you don't catch all: | No mismatch allowed using hierarchy_1 | Instead using hierarchy_2 | Note, setting 'merge_pac=FALSE' returns a one-column data.frame only | containing the new hierarchical classifications. | Lets increase number of mismatches an merge it with the PAC | (How many mismatches depends on what you allowed previously in the workflow) | Now we also have some mitochondrial tRNA | Summarize data over groups (PAC_summary) | Differential Expression using PAC object (PAC_deseq) | Principal component analysis (PAC_pca) | Size distribution and nucleotide bias | Simple stacked bars and pie charts | Specilized analysis in Seqpac | Advanced alignment analysis (tRNA class analysis) | tRNA analysis in Seqpac | First create an annotation blank PAC with group means | Then reannotate only tRNA using the PAC_mapper function | or use the provided fasta | map_object <- PAC_mapper(pac_trna, input=ref, N_up = "NNN", N_down = "NNN", | mismatches=0, threads=1, report_string=TRUE, | override=TRUE) | Hint: By adding N_up ad N_down you can make sure that modified fragments (like | 3' -CAA in mature tRNA are included). | Plot tRNA using xseq=TRUE gives you the reference sequence as X-axis: | (OBS! Long reference will not show well.) | Targeting a single tRNA using a summary data.frame | Find tRNAs with many fragments | 1st extract number of rows from each alignment | The test data is highly down an filterd sampled, but still some with tRNA have | a few alignment | Lets select a few of them and plot them | Generate range types using a ss-file | Download ss object from GtRNAdb | ("http://gtrnadb.ucsc.edu/") | or for testing use the provided ss-file in secpac | Classify fragments according to loop cleavage (small loops are omitted) | Remove reference tRNAs with no hits | Now we have quite comprehensive tRNA loop annotations | Don't forget to check ?map_rangetype to obtain more options | Function classifying 5'-tRF, 5'halves, i-tRF, 3'-tRF, 3'halves | Does all tRNAs have 3 loops? | Set tolerance for classification as a terminal tRF | Important: | We set N_up and N_down to "NNN" in the PAC_mapper step. To make sure | that we have a tolerance that include the original tRNA sequence | we set terminal= 2+3 (5). | Plot tRNA types | Now use PAC_trna to generate some graphs based on grand means