Minor changes:
- Updated dependencies to Bioconductor 3.18.
- Ensured that
validObject
calls are enclosed withinassert
. - Relaxed
validObject
assert checks on legacyDESeqResults
methods. - Resaved minimal example objects for unit tests.
- Improved
lfcShrinkType
for legacyDESeqResults
objects.
Minor changes:
- Removed dependency on stringi package, in favor of
strMatch
from AcidBase. export
: Reworked methods to use AcidGenerics convention instead of BiocIO.- Now enforcing strict camel case for all function names.
- Renamed
plotDEGHeatmap
toplotDegHeatmap
. - Renamed
plotDEGPCA
toplotDegPca
. - Renamed
plotDEGStackedBar
toplotDegStackedBar
. - Renamed
plotDEGUpset
toplotDegUpset
. - Renamed
plotLFC
toplotLfc
. - Renamed
plotMA
toplotMa
. Now using AcidGenerics instead of BiocGenerics. - Renamed
plotPCA
toplotPca
. Now using AcidGenerics instead of BiocGenerics.
Minor changes:
- Reworked internal ggplot2 code to use data pronouns (
.data
) instead of rlang syntactic sugar (!!
/sym
). - Using updated AcidPlots functions:
acid_scale_color_discrete
instead ofautoDiscreteColorScale
andacid_discrete_coord_flip
instead ofacid_coord_flip
.
Minor changes:
sanitizeTximportIdentifiers
: Fixed typo in identifier check pattern.
New functions:
sanitizeTximportIdentifiers
: New utility function for sanitizing malformed transcript identifiers returned when importing salmon data generated against GENCODE-aligned BAM files. We hit this edge case when processing Nanopore samples using guppy to minimap2 to BAM with samtools. This edge case has also be observed when importing kallisto data aligned against GENCODE, which also doesn't currently handle transcript identifier sanitization correctly.
Major changes:
- Updated dependencies to R 4.3 / Bioconductor 3.17.
Minor changes:
- Removed internal calls to basejump package, which has been changed to a
meta-package of Acid Genomics packages, without any exports in
NAMESPACE
. This has been corrected inside ofprepareTximportFiles
to correctly reference the methods exported in syntactic package.
Major changes:
- Reworked
prepareTximportFiles
to work on a directory instead of files.
Minor changes:
- Now classing on
DFrame
instead ofDataFrame
virtual class consitently. - Resaved example
deseq
anddeseqMinimal
objects. - Removed unused
matchMetadataToFiles
function.
Minor changes:
- Updated dependencies to Bioconductor 3.16.
- Migrated
requireNamespaces
import from AcidBase to goalie.
Major changes:
export
: Reduced the number of exported methods, to match the new conventions defined by pipette. Note thatcon
is now required instead ofdir
for the target directory.
Minor changes:
- Tightened up dependency requirements.
- Improved consistency of internal goalie boolean functions.
Minor changes:
- Updated package to roxygen2 7.2.1.
results
: Now defaults toquiet = TRUE
by default, to reduce the amount of message spam in bcbioRNASeq R Markdown templates.
Minor changes:
- Improved Windows CI compatibility, using
tempdir2
andunlink2
.
Minor changes:
- Removed deprecated
plotMeanAverage
andapeglmContrast
functions from NAMESPACE, to avoid collisions with updates in bcbioRNASeq package.
Major changes:
- Reworked and simplified
topTables
asmarkdownTables
. - Simplified
resultsTables
return to always return asDataFrameList
containing subsetDESeqResults
. Previouslytbl_df
option was available, but this has been removed in favor of Bioconductor S4Vectors support instead. - Improved code coverage of
export
,markdownTables
, andresultsTables
, to ensure that we never drop rownames.
Minor changes:
- Hardened
resultsTables
andtopTables
to work with minimalDESeqDataSet
that doesn't contain gene names and additional metadata inrowData
. - Improved
plotDEGStackedBar
andplotDEGUpset
to early return with alert warning for objects without DEGs. - Resaved example objects and added new
deseqMinimal
object, that contains an unusually smallDESeqDataSet
without metadata, which is useful for testing edge case handling in our plotting functions. - Updated lintr checks and migrated to testthat 3e for unit tests.
- Now consistently using
Map
instead ofmapply
, as recommended by lintr. plotBaseMean
now longer exportinginteger
method -- using internally only.
Major changes:
- Package now requires R 4.2 / Bioconductor 3.15.
Minor changes:
- Reworked internal droplevels calls against SummarizedExperiment using new
droplevels2
approach, which provides better compatibility with Bioconductor 3.15 release. - Reworked internal handoff to
ggplot
, usingas.data.frame
coercion instead ofas_tibble
.
New functions:
plotContrastScatter
: Visualize expression between numerator and denominator for a contrast of interest.plotLFC
: Plot log2 fold change distributions for all contrasts in the DESeq2 analysis.
Major changes:
- Updated dependencies to R 4.1 / Bioconductor 3.14.
export
: Updated method to inherit BiocIO conventions now used in basejump, which now rely oncon
argument.- Added
as.DESeqDataSet
andas.DESeqTransform
coercion methods.
Minor changes:
plotPCA
: Tightned up method export to only work onDESeqAnalysis
object, so we don't conflict withDESeqTransform
method defined in DESeq2.plotVolcano
: Hardened against edge case where visualization of a specific gene is requested, but contains a censored adjusted P value.- Updated example
deseq
object. - Added basejump as a library load in DE template.
contrastSamples
: Improved documentation.- Package code is now formatted according to styler conventions.
Minor changes:
apeglmResults
: Relaxed assert check on P values when applying adaptive shrinkage via apeglm model.
Minor changes:
plotVolcano
: Bug fix for plot labels not mapping correctly. Expecting "lfcCol", "negLogAlphaCol" internally, but these were incorrectly mapped to the values expected forplotMA
instead. Thanks to @kokyriakidis for noticing this.
Minor changes:
- Improved R Markdown template for differential expression report, and added
code coverage for
rmarkdown::render
call in unit tests.
Minor changes:
- Needed to update internal calls to
guide
function defined in ggplot2, which has deprecated use of logicalFALSE
in favor of"none"
.
New classes:
DESeqResultsList
: New class and corresponding generator function that enables quick looping operations across relatedDESeqResults
objects. This can be useful instead ofDESeqAnalysisList
approach for cases where we don't have all of the originalDESeqDataSet
objects used to generate the correspondingDESeqResults
, which can happen with commercial sequencing vendors and analysis platforms.
Major changes:
- Reworked and improved manual limit handling for
plotMA
andplotVolcano
. By default, this behavior is unchanged from previous release, but now limit overrides can be defined similar to the approach in DESeq2 that uses geneplotter engine internally.
Minor changes:
- Improved information in subtitles for MA, volcano, and other DEG plots.
alphaThreshold
andlfcThreshold
return sensible defaults for minimalDESeqResults
objects created by coercion of aDataFrame
directly.
Minor changes:
DESeqAnalysis
: Relaxed check for gene identifiers inmcols
ofrowRanges
of nestedDESeqDataSet
inside data slot. Resolves issue #61.- Updated internal dependencies. Now requiring basejump v0.14.8+, which also depends on at least Bioconductor 3.12.
Minor changes:
- NAMESPACE updates, simplifying the number of imported packages following the basejump v0.14 release.
Major changes:
- Added subsetting extract method support via
[
forDESeqAnalysis
class. Code works internally similar to method defined forbcbioRNASeq
. - Added method support for some important base methods:
rownames
,colnames
,names
, anddimnames
forDESeqAnalysis
class.
Minor changes:
degIntersection
: Addedreturn = "names"
option, which is useful for generating intersection subset tables.
Minor changes:
- Updated package dependency version requirements.
Minor changes:
- Migrated
extra
mode internal code fromresultsTables
directly intoresults
, so we can hand-off to new methods defined in acidgsea package that depend onDESeqResults
object (i.e.geneSetResults
). TheresultsTables
function still behaves the same as previous releases. plotDEGStackedBar
: Added support fororderBySize
argument.degPerContrast
: Removed unnecessaryn
argument; usereturn
instead.
Minor changes:
results
: Bug fix for logical check onlfcShrink
return. The internal use ofidentical
here is too strict, aslfcShrink
can return cause attribute from goalie.lfcShrink
: Hardened logical return, ensure goalie cause attribute removal.
Minor changes:
plotDEGPCA
: Updated internaltitle
andsubtitle
handoff toplotPCA
.- Quieted down messages in
plotDEG*
functions. This information is shown in the plots and doesn't need to be messaged.
Minor changes:
degIntersection
: Bug fix for column names not returning as expected.
New functions:
degIntersection
: Utility function that will return the number of times a DEG is detected across contrasts.
Minor changes:
apeglmResults
: Simplified default arguments and disabled...
passthrough tolfcShrink
, which is a bit confusing. Note thatDESeq
andlfcShrink
are now called internally withparallel = TRUE
.
Minor changes:
- Added
i
argument support todegPerContrast
, and the plotting functionsplotDEGUpset
andplotStackedBar
, which calldegPerContrast
internally. This allows the user to pick specific contrasts of interest to plot. plotDEGStackedBar
: Now allowing the user to pick only up- or down-regulated genes, which can be useful.- Bug fix for
apeglmResults
cli display code.
Minor changes:
- Adjusted minimum dependency versions so package will build on bioconda.
Major changes:
DESeqAnalysis
object now supports stashing of threshold metadata:alphaThreshold
.lfcShrink
: whether to use (adaptie) shrunken LFC values or not.lfcThreshold
(for post-hoc cutoffs).baseMeanThreshold
. These are defined in themetadata
slot of the object and can be accessed/ modified with corresponding S4 generics.
- Updated default differential expression R Markdown template to support
additional parameters:
alpha_threshold
base_mean_threshold
contrast_samples
lfc_shrink
lfc_threshold
Minor changes:
- Switched to cli package for more informative messages.
Major changes:
- Added support for
baseMeanThreshold
, where applicable. Applies primarily todeg
,plotDEGHeatmap
,plotDEGPCA
,plotMA
, andplotVolcano
, andresultsTables
. - Reworked internal code that handles DEG extraction. Note that
lfcThreshold
andbaseMeanThreshold
now use>=
logic rather than previous>
approach. The alpha cutoff still uses>
operator logic.
Minor changes:
- Removed UpSetR dependency, in preparation for future switch to ggupset.
Minor changes:
- Split out
setValidity
call separately fromsetClass
. updateObject
:FGSEAList
method now uses...
andverbose
arguments, as defined in the S4 generic.
Minor changes:
- Resaved example test data set, using Ensembl 99 annotations.
- Updated documentation using roxygen2 v7.1.
Minor changes:
- Updated basejump dependencies. Namely, bioverbs package has been renamed to AcidGenerics, prior to CRAN submission.
New functions:
combine
: Method support for combining multiple results contrasts into a singleDESeqAnalysis
object. Note that the internalDESeqDataSet
andDESeqTransform
objects defined inx
andy
must match.
New functions:
resultsDiff
: Compare the effect difference between twoDESeqResults
contrasts. Useful for evaluating the relative effect of compounds, RNAi clones, CRISPR guides, for example.
Minor changes:
contrastSamples
: Added support for interaction effect (difference of differences) contrasts. For example: "group_B_vs_A_group_C_vs_A_effect".plotCounts
: Addedsamples
argument support forDESeqAnalysis
method. This is useful for quick sample selection when generating plots.- Improved internal consistency of
lfcShrink
handling inresults
calls. Note thatreuslts
still defaults tolfcShrink = FALSE
, whereas other plotting and results table functions default tolfcShrink = TRUE
. deg
: Added alpha and LFC information in message.
Minor changes:
- Now allowing the user to override internal
alpha
andlfcThreshold
for these plots:plotDEGHeatmap
,plotDEGPCA
,plotDEGUpset
,plotMA
,plotVolcano
.
Minor changes:
deg
: FixedDESeqAnalysis
method passthrough toDESeqResults
, allowing use ofalpha
andlfcThreshold
, for post-hoc cutoffs.
Minor changes:
- Deprecated
apeglmContrast
in favor of modified S4 method approach now defined inapeglmResults
. The internal code is otherwise unmodified. plotDEGHeatmap
: Simplified argument handling and internal passthrough toplotHeatmap
SummarizedExperiment
method defined in AcidPlots.
Minor changes:
plotCounts
: Added method support forDESeqTransform
. Also added atransform
argument toDESeqAnalysis
method, which allows the user to easily plot variance-stabilized counts using the slottedDESeqTransform
object.
Major changes:
- Renamed
results
argument toi
forDESeqAnalysis
methods, where applicable. This improves consistency with Bioconductor conventions (similar toassay
method, which also usesi
for position). Note that previous usage ofresults
is now defunct and should intentionally error.
Minor changes:
resultsMatrix
: Added support forbaseMean
aggregation, and improved documentation.- Updated basejump dependency versions.
- Added tximport as a suggested package.
- Updated dependencies to require Bioconductor 3.10 release.
- Added
plotHeatmap
,plotCorrelationHeatmap
, andplotQuantileHeatmap
method support, which extractsDESeqTransform
object internally and hands off toSummarizedExperiment
methods defined in AcidPlots.
Minor changes:
plotDEGHeatmap
,plotDEGPCA
: Hardened methods against input with very few DEGs (less than 10). Simplified internal method passthrough to no longer rely uponmatchArgsToDoCall
function.plotBaseMean
: Now exportingnumeric
method, which is the basis forDESeqDataSet
andDESeqResults
methods.
New functions:
matchMetadataFiles
: Quickly generate a mapping data frame of user input metadata sample names to the expected tximport quant directory names (e.g. salmon, kallisto output). This is useful when a user provides metadata that doesn't match the FASTQ names exactly.prepareTximportFiles
: Automatically assigns valid sample names to tximport quant file import. Tested primarily against salmon and kallisto files.
New functions:
apeglmContrast
: New utility function that enableslfcShrink
using apeglm without having to mentally deal withcoef
argument.
Major changes:
- Now attached DESeq2 automatically via "Depends" in
DESCRIPTION
.
Minor changes:
plotBaseMean
: Added argument support to define colors and disable summary statistics lines. Simplified internal passthrough inDESeqAnalysis
,DESeqDataSet
, andDESeqResults
methods.
Minor changes:
- Bug fixes for contrast name handling with user-defined resultsNames.
DESeqAnalysis
methods now stash contrast name intometadata
ascontrastName
forDESeqResults
objects, which allows for easier contrast name handling inside plotting and other markdown functions. We needed to add a newuseStash
argument forcontrastName
that disables this behavior, socontrastSamples
can pull the samples from a pairwise contrast easily.
New functions:
importPairwiseContrasts
: Quickly import pairwise contrasts definining numerator and denominator for a specified group.
Minor changes:
- Requiring R 3.6. Updated basejump and Bioconductor dependencies.
- Improved consistency of
DataFrame
usage insideplotMA
andplotVolcano
, using ourleftJoin
method internally.
Minor changes:
- Removed dplyr dependencies in
plotMA
andplotVolcano
. Reworked internal code using base R methods againstDataFrame
class instead oftbl_df
. - Split out documentation on S4 generator functions into separate Rd files.
- Updated basejump dependecy versions.
topTables
: Now usingDataFrame
-oriented internal code to return thekable
output, rather than relying upontbl_df
with dplyr.
Minor changes:
- Improved documentation consistency by using shared roxygen params from new AcidRoxygen package.
- Updated basejump dependency versions.
New functions:
plotBaseMean
: Quickly visualize the count distribution across all samples.
Minor changes:
- Improved Dockerized Travis CI configuration, using new Rcheck repo.
Minor changes:
- Updated basejump dependencies.
- Improved code coverage and documentation.
- Updated example dataset, based on latest acidtest RangedSummarizedExperiment.
Version bump, reflecting change in basejump dependency.
New functions:
plotPCA
: Added improved method support forDESeqTransform
, masking the method exported in DESeq2. Also added corresponding method support forDESeqAnalysis
class, which usesDESeqTransform
method internally.
Minor changes:
- Removed
plotMA2
export, which keeps DESeq2plotMA
method as an alias.
New functions:
plotDEGUpset
: Support for easily plotting bidirectional (up/down) DEG intersections across contrasts, using the UpSetR package.
Minor changes:
- Improved
show
method to includealpha
andlfcThreshold
information. topTables
: AddedlfcShrink
support.
New functions:
- Now exporting
lfcShrinkType
, andtransformType
, which were previously used internally but are generally useful.
Major changes:
plotDEGHeatmap
: Improved default color breaks. Now defaults to blue-black-yellow default color scheme (seeAcidPlots::blueYellow
).- Removed internal
.matchResults
function in favor of consistently usingresults
instead throughout the package.
Minor changes:
- Slotting
lfcShrink
into object is now optional again. - Added
lfcShrink
argument support toplotDEGHeatmap
,topTables
, andexport
. plotMA
,plotVolcano
: Now suppressing duplicate gene message returned by internalGene2Symbol
call, which isn't informative here.- Added
lfcThreshold
andlfcShrink
information on plots, where applicable.
Minor changes:
- Converted
resultsMatrix
to an S4 generic and added initial support forDESeqAnalysis
andDESeqAnalysisList
class objects.
Minor changes:
- NAMESPACE and documentation updates, incorporating new AcidPlots package.
Bug fixes to improve handling of DESeqDataSet
generated using RefSeq gene
annotations.
Minor changes:
contrastNames
: Improved internal regular expression matching to properly detect a contrast factor prefix that contains an underscore. This now works by checking against the column names ofcolData
internally.topTables
:geneID
,geneName
, andgeneBiotype
are now optional columns.- Updated Travis CI configuration to use rnaseq Docker image.
Major changes:
export
: Removedhumanize
argument.plotCounts
: Removedtransform
argument.plotDEGHeatmap
,plotDEGPCA
: Removedcounts
argument.plotMA
,plotVolcano
: Improved color support and gene-to-symbol handling.
Minor changes:
topTables
: Simplifed internal method code forDESeqAnalysis
class.- Consistently importing British spelling variants for ggplot2 functions.
- Updated unit tests for plotting functions.
New functions:
resultsMatrix
: Utility function that quickly aggregatesDESeqResults
values for multiple contrasts into a singlematrix
. Currently supports return oflog2FoldChange
,stat
, orpadj
values.
Minor changes:
- Reorganized unit tests and improved code coverage.
Minor changes:
- Compatibility update for basejump v0.10 release. Some plotting code
dependencies have been split out to firestarter and minimalism packages.
We have updated the internal code dependencies to reflect these changes.
This includes
plotCounts
,plotDEGHeatmap
(i.e.plotHeatmap
), andplotDEGPCA
(i.e.plotPCA
). - Updated documentation on global formals, which now use
acid
prefix instead ofbasejump
.
Minor changes:
- Migrated code to Acid Genomics.
Minor changes:
- Updated differential expression template and dependencies.
Minor changes:
plotCounts
: RemovedDESeqDataSet
method support, which is now covered insideSummarizedExperiment
method support in basejump.- Updated differential expression R Markdown template to improve parameterization support.
Major changes:
plotDEGHeatmap
,plotDEGPCA
: Reworked internal code to exportDESeqResults
method that maintains backward compatibility with approach used in bcbioRNASeq F1000 paper.- Exported additional legacy
DESeqResults
method support forplotMA
,plotVolcano
,resultsTables
, andtopTables
, to maintain backward compatibility with bcbioRNASeq R package.
Minor changes:
- Updated NEWS to include information on all previous releases.
Minor changes:
- R 3.4 compatibility fix for
resultsTables
, which needs to assign rownames onrowData
return.
This release reworks the S4 class structure and adds DESeqAnalysisList
. Note
that objects previously saved prior to the v0.1.8 release will no longer return
valid when checked using validObject
. They can be updated using
updateObject
.
New classes:
DESeqAnalysisList
: extendsSimpleList
, and enables saving of multiple analyses (e.g. per patient clinical data) in a single object. This class makes it much easier to report on multiple complex contrasts.
Major changes:
DESeqAnalysis
now inherits fromAnnotated
class. This enables support formetadata
slot, which can be used to store package version.- Improved checks in
DESeqAnalysis
validity method.
Minor changes:
- Added support for
plotCounts
generic, in favor of now deprecatedplotGene
. - Added support for
results
andresultsNames
generics. - Added internal code to check
lfcShrink
type (e.g. apeglm). - Added
sampleData
method support forDESeqAnalysis
, thereby simplying thesample_data
chunk in differential expression R Markdown template. - Updated and improved
show
method forDESeqAnalysis
. This now will return the version of DESeqAnalysis and not just DESeq2. - Updated
deseq
example object.
Minor changes:
contrastSamples
: Improved internal sample and contrast name handling. No longer attempting to force snake case formatting.- Pinned lintr check package to steinbaugh fork.
Minor changes:
- Finish requiring
results
argument for allDESeqAnalysis
methods, where applicable. For example, refer tocontrastSamples
in this release. - Removed
sanitizeRowData
from imports. - Draft update to internal
.matchResults
assert check, looking formissing
results argument.
Major changes:
- Importing
DataFrame
totbl_df
coercion methods directly from basejump instead of the transformer package. Note that S4Transfomer package was renamed simply to transformer at this date.
Minor changes:
- Improved documentation for
DESeqAnalysis-class
and the corresponding generator function. Refer to the roxygen syntax (e.g.rdname
) on how to accomplish this, since it is useful across packages that define S4 class. - Improved working examples and removed todo/fixme comments.
- Tightened up Travis CI and AppVeyor CI config, which now only checks against master branch (e.g. for pull requests). This reduces the overall CI burden, so that pushes to develop branch don't trigger CI builds.
Major changes:
- Added new R Markdown template designed for a
DESeqAnalysis
object.
Minor changes:
- Switched to reexporting generics from bioverbs instead of basejump,
where applicable. For example, moved
contrastSamples
andresultsTables
generics (verbs) to bioverbs. - Removed internal
validateS4
code, instead relying upongoalie::validate
. - Simplified Travis CI configuration to only test against
bioc-release
. - Simplified internal asserts using
nullOK = TRUE
, where applicable. This was added in the corresponding release update to goalie. - Now using
isAlpha
instead ofcontainsAlpha
for assert check. - Split out NAMESPACE imports into a separate
imports.R
file.
Major changes:
- No longer using
results = 1L
by default inDESeqAnalysis
methods for functions that support pulling aDESeqResults
object. This can result in unwanted behavior, and we shouldn't assume use of first slotted contrast. Now the user must request the desired contrast explicitly.
Minor changes:
- Improved internal code for
plotDEGHeatmap
,plotDEGPCA
, - Code cleanup to pass lintr checks.
- Miscellaneous documentation (primarily working example) improvements.
New functions:
contrastSamples
: Experimental. Return the samples used to generate a correspondingDESeqResults
object. May revise this approach to simply store the sample names directly in theDESeqResults
in the future.deg
: Utility function to obtain DEG gene vector.resultsTables
: Migrated from bcbioRNASeq. Enables easy output of directional DEG tables fromDESeqResults
object.
Major changes:
- Added new
.matchResults
internal utility to matchDESeqResults
. - Reworked internal code for
export
. - Removed
DESeqResultsTables
class. - No longer exporting
DESeqResults
method forplotDEGHeatmap
,plotDEGPCA
. May add this back in a future release to maintain compatibility with bcbioRNASeq workflow paper.
Minor changes:
- Miscellaneous documentation and assert check (using goalie) fixes.
- Improved internal S4 validity checks using
goalie::validate
instead ofassertthat::validate_that
. - Updated example
DESeqAnalysis
S4 data set (deseq
). - Reorganized and improved unit tests.
- Added a placeholder for
updateObject
, which must be added in future update.
Major changes:
- Improved
show
method forDESeqResultsTables
class.
Minor changes:
- Miscellaneous documentation and working example improvements.
- Initial set up of testthat unit tests.
- Added lintr check support.
- Enabled Travis CI and AppVeyor CI build checks.
- Added CI badges to README.
Initial release. Some of the functions defined in this package have been migrated from my bcbioRNASeq R package.