R: Get a Data Frame of k-mer Frequency by Position from a...
getKmer-methods
R Documentation
Get a Data Frame of k-mer Frequency by Position from a SequenceSummary Object
Description
An object that inherits from class SequenceSummary contains
k-mer frequency data by position gathered by readSeqFile when
kmer=TRUE. getKmer is an accessor function that is
useful for custom ggplot2 aesthetics.
Usage
getKmer(x)
Arguments
x
an S4 object that inherits from class SequenceSummary
from, as returned from readSeqFile.
Value
getKmer returns a data.frame with columns:
kmer
the k-mer sequence.
position
the position in the read.
count
the frequency of the k-mer at this position.
Methods
signature(x="SequenceSummary")
getKmer is an accessor function that only works if there is
k-mer data, thus it only works if readSeqFile was called
with kmer=TRUE (and hash.prop is greater than 0).
## Load a FASTQ file, with sequence and k-mer hashing on by default.
s.fastq <- readSeqFile(system.file('extdata', 'test.fastq', package='qrqc'))
## plot counts of a subset of k-mers by position
s.kmers <- getKmer(s.fastq)
top.kmers <- s.kmers$kmer[order(s.kmers$count, decreasing=TRUE)[1:40]]
p <- ggplot(subset(s.kmers, kmer %in% top.kmers)) + geom_bar(aes(x=position, y=count,
fill=kmer), stat="identity")
p
Results
R version 3.3.1 (2016-06-21) -- "Bug in Your Hair"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.
R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.
Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.
> library(qrqc)
Loading required package: reshape
Loading required package: ggplot2
Loading required package: Biostrings
Loading required package: BiocGenerics
Loading required package: parallel
Attaching package: 'BiocGenerics'
The following objects are masked from 'package:parallel':
clusterApply, clusterApplyLB, clusterCall, clusterEvalQ,
clusterExport, clusterMap, parApply, parCapply, parLapply,
parLapplyLB, parRapply, parSapply, parSapplyLB
The following objects are masked from 'package:stats':
IQR, mad, xtabs
The following objects are masked from 'package:base':
Filter, Find, Map, Position, Reduce, anyDuplicated, append,
as.data.frame, cbind, colnames, do.call, duplicated, eval, evalq,
get, grep, grepl, intersect, is.unsorted, lapply, lengths, mapply,
match, mget, order, paste, pmax, pmax.int, pmin, pmin.int, rank,
rbind, rownames, sapply, setdiff, sort, table, tapply, union,
unique, unsplit
Loading required package: S4Vectors
Loading required package: stats4
Attaching package: 'S4Vectors'
The following objects are masked from 'package:reshape':
expand, rename
The following objects are masked from 'package:base':
colMeans, colSums, expand.grid, rowMeans, rowSums
Loading required package: IRanges
Loading required package: XVector
Loading required package: biovizBase
Loading required package: brew
Loading required package: xtable
Loading required package: Rsamtools
Loading required package: GenomeInfoDb
Loading required package: GenomicRanges
Loading required package: testthat
Attaching package: 'testthat'
The following object is masked from 'package:S4Vectors':
compare
> png(filename="/home/ddbj/snapshot/RGM3/R_BC/result/qrqc/getKmer-methods.Rd_%03d_medium.png", width=480, height=480)
> ### Name: getKmer-methods
> ### Title: Get a Data Frame of k-mer Frequency by Position from a
> ### 'SequenceSummary' Object
> ### Aliases: getKmer getKmer-methods getKmer,SequenceSummary-method
> ### Keywords: methods accessor
>
> ### ** Examples
>
> ## Load a FASTQ file, with sequence and k-mer hashing on by default.
> s.fastq <- readSeqFile(system.file('extdata', 'test.fastq', package='qrqc'))
>
> ## plot counts of a subset of k-mers by position
> s.kmers <- getKmer(s.fastq)
> top.kmers <- s.kmers$kmer[order(s.kmers$count, decreasing=TRUE)[1:40]]
> p <- ggplot(subset(s.kmers, kmer %in% top.kmers)) + geom_bar(aes(x=position, y=count,
+ fill=kmer), stat="identity")
> p
>
>
>
>
>
> dev.off()
null device
1
>