Minor changes:
plotReadsPerCell: Updated internal code to avoid unwanted type change duringleftJoinstep.
Major changes:
- Bumping version, due to significant changes in bcbioBase and Acid Genomics dependency packages.
- Enforcing strict camel case in all function names.
Major changes:
- Now requiring R 4.3 / Bioconductor 3.17.
- Removed usage of BiocParallel, including
BPPARAMfrom primarybcbioSingleCellgenerator function.
Minor changes:
plotReadsPerCell: Updated internal ggplot2 to use.datapronoun instead of!!/symrlang syntactic sugar approach.
Minor changes:
- Tightened up package dependencies, requiring Bioconductor 3.16.
- Migrated
requireNamespaesin imports from AcidBase to goalie.
Minor changes:
- Updated calls to
importandexport, switching fromfile/dirto simplycon. This helps avoid breaking changes with pending pipette package update. - Updated Docker image URL.
Minor changes:
- Updated lintr checks and testthat unit tests.
Major changes:
- Starting a new release series based on R 4.2 / Bioconductor 3.15.
bcbioSingleCellS4 class check now allows eithersessionInfo(from utils package) orsession_info(from sessioninfo package) to be slotted insessionInfometadata.
Minor changes:
- Now requiring R 4.2 / Bioconductor 3.15.
- Minor compatibility fixes for Bioconductor 3.15.
Major changes:
- Split out basejump imports into component packages.
Minor changes:
- Removed unused
formalsListfrom NAMESPACE, which is removed in upcoming basejump package update. - Removed
barcodeRanksPerSamplefrom NAMESPACE.
Minor changes:
- Updated basejump dependencies and removed unnecessary stringr import.
Minor changes:
- Maintenance release, providing support for basejump v0.14 release series.
Minor changes:
- Maintenance release, updating dependency version requirements.
Minor changes:
- Maintenance release, updating minimum R dependency to 4.0.
Minor changes:
- Bug fix for integer handling in
.importReadsfollowing switch tovroom::vroomfromdata.table::fread.
Minor changes:
updateObject: Bug fix release for breaking changes introduced bycolData<-assignment onSingleCellExperiment/SummarizedExperimentexpectingcheck = FALSEsupport for downstreamupdateObjectcall. Added...passthrough that prevents this error in method support forbcbioSingleCellclass. This should now be fully compliant with R 4.0 / Bioconductor 3.11 release.updateObject: Addedverboseargument support, defaulting now toFALSE.
Minor changes:
bcbioSingleCell: Removed now defunctspikeNamesargument. Refer tomakeSummarizedExperiment,makeSingleCellExperimentdocumentation and release notes in basejump package for details.
Minor changes:
- Tightened up dependencies in DESCRIPTION in preparation for bioconda release update, which breaks with basejump 0.12.0 conda dependency otherwise.
Minor changes:
- Changed license from MIT to GPL-3, matching other bcbio and Acid Genomics R packages.
Minor changes:
- Updated messages to use cli package approach. The same approach is now used in the bcbioRNASeq package as well.
- Updated basejump dependencies to support rename from bioverbs to AcidGenerics.
Minor changes:
- Updated S4 validity checks and unit tests to support Bioconductor 3.10.
Internally, we have to adjust checks against
DataFrameclass to also look forDFrameclass, which has changed in latest S4Vectors update. See related update in bcbioRNASeq package. - Full backward compatiblity with Bioconductor 3.9 is currently maintained.
- Updated basejump dependency versions.
Minor changes:
- Switched QC template to use
bcb_fileas main file input, similar to bcbioRNASeq QC template. - Updated lintr config.
Minor changes:
bcbioSingleCell: Internal generator now callsimportSampleDatausingpipeline = "bcbio"argument, so we don't run into breaking changes when handling user metadata in a future basejump update.- Updated basejump dependency versions.
Minor changes:
- NAMESPACE and basejump dependency updates.
Major changes:
bcbioSingleCell: Simplifed internalcolDatahandling, callingcalculateMetricsafter creatingSingleCellExperimentwithmakeSingleCellExperiment. This improves consistency with Chromium package and enables better preparation ofrowRangescontaining spike-ins and transgenes.
Minor changes:
- Moved
metricsColsglobal to basejump, so we can share with Chromium. - Improved generator consistency with other basejump and bcbio R packages.
Minor changes:
plotReadsPerCell: Reworked internal code to useDataFrameprimarily instead oftbl_df, so we can remove dplyr dependency.- Updated basejump and bcbioBase dependency versions.
- Removed some additional unused dependencies, to lighten the package.
This update is intended to simplify the package and reduce the amount of
plotting code that is defined to bcbioSingleCell class specifically, instead
of SingleCellExperiment.
Major changes:
- Offloaded plotting functions to AcidPlots, so we can use some of this code in a shared manner with objects imported from 10X Genomics Chromium.
Minor changes:
- Improved documentation consistency by using shared roxygen from AcidRoxygen package.
- Updated basejump and bcbio R package dependencies.
Major changes:
- Updated R dependency to 3.6. This now requires Bioconductor 3.9+.
updateObject: Simplified method support, droppingrowRangesargument. No longer attempting to coerce assays back to a simple list, which doesn't work well on Bioconductor 3.10 Devel currently.
Minor changes:
- Updated basejump dependencies.
- Improved code coverage over 90%.
Minor changes:
- Improved internal S4 function naming consistency.
- Updated basejump dependencies.
Minor changes:
- Updated basejump dependencies.
- Improved Travis CI docker configuration.
Minor changes:
- Updated
barcodeRanksPerSampleandplotBarcodeRanksto support DropletUtils update in Bioconductor 3.9. - Improved Travis and AppVeyor CI configuration.
- S4 generic reexport documentation fixes.
Minor changes:
- Now importing ggplot2 code from AcidPlots package.
plotCellCounts: Improved default appearance, removing black border.- Updated basejump and bcbio R package dependencies.
Minor changes:
- Deprecated
prepareSingleCellTemplate, in favor ofprepareTemplate. - Switched Travis CI configuration to use
singlecellDocker image.
Major changes:
- Restricted S4 methods back to
bcbioSingleCellfromSingleCellExperimentwhere applicable. Generally, this applies to the supported QC plotting functions. Previously, the methods were defined againstSingleCellExperimentto also supportCellRangerS4 class, which has since been moved to the Chromium package.
Minor changes:
- Improved code coverage by adding additional unit tests.
- Updated internal reexport method for S4 generics, making
reexports.Rdfile no longer necessary. - Renamed R Markdown QC template from
quality_controltoquality-control, using kebab case instead of snake case.
Major changes:
updateObjectis now fully backward compatible for all objects created by the package, including versions prior to v0.1.- Tightened up S4 validity class checks for
bcbioSingleCell. Similar tobcbioRNASeqclass checks, now requiring these elements inmetadata:bcbioCommandsLog,bcbioLog,dataVersions,gffFile,lanes,programVersions,projectDir,runDate,wd, andyaml. Previously, these weren't required because we were sharing internal validity code checks with theCellRangerS4 class.CellRangerhas since been moved to the new Chromium package, so it's now appropriate to tighten up bcbioSingleCell. - Extract method
[onbcbioSingleCellclass objects no longer alters the version of the object. It only setssubset = TRUE, similar to bcbioRNASeq.
Minor changes:
- Bug fix release for formal rename in
emptyRangesfrommcolsNamestomcolnames. This has been changed in basejump 0.10.3.
Minor changes:
- Migrated development code to Acid Genomics.
- Updated basejump dependency to v0.10 release series.
Minor changes:
- Updated basejump and bcbioBase dependencies.
- Updated documentation.
- Added complete release information in NEWS.
Minor changes:
bcbioSingleCellgenerator: improved internal handling ofmapCellsToSamplescall. This reworked join step checks the sampleID mapping more carefully.- Removed
plotGenefrom deprecations. This function has been renamed toplotCountsinstead in the basejump package.
Minor changes:
- Updated basejump and bcbioBase dependencies, to pass build checks.
- Split out imports into a separate R file.
This release reworks the internal assert checks substantially.
Major changes:
- First release that has fully migrated to using goalie package instead of assertive package internally for checks.
- Reworked
bcbioSingleCellS4 validity checks. - Reworked
bcbioSingleCellgenerator function to use cleaner assert checks. - Migrated to inheriting S4 generics from bioverbs, where applicable.
Minor changes:
- Reworked documentation to use sentence case instead of title case.
Major changes:
metrics: Removed code and consolidatedSingleCellExperimentmethod support in basejump package.
Minor changes:
- Documentation improvements.
plotQC: Improved validity checks.
Minor changes:
- Updated basejump and bcbioBase dependencies, to tighten up build checks.
- Documentation and CI configuration fixes.
Major changes:
- Migrating
CellRangerS4 class to separate Chromium R package. - Migrated additional S4 generics to basejump package (bioverbs).
- Exporting
calculateMetricsas a user-accessible function. - Extract (
[) now returnsbcbioSingleCellobject again. filterCells: Reworking to returnSingleCellExperimentinstead ofbcbioSingleCellobject.- Improved plotting functions to inherit params from basejump.
Minor changes:
- Removed
barcodePatternglobal variable.
Major changes:
- Updated NAMESPACE to inherit from basejump instead of any of the basejump subpackages, which are subject to rework during this release series.
- Renamed example data from
cellranger_smalltocellranger, andindrops_smallto simplyindrops.
Minor changes:
- Transitioning to goalie for assert checks in place of assertive package.
- Miscellaneous documentation improvements.
- Updated working examples for plotting functions, using
indropsexample data. - Reworked
bcbioSingleCellshow(print) method.
Fork of hbc/bcbioSingleCell code base, for additional development and
improvements prior to Bioconductor submission. The v0.2 release series is
being maintained on the hbc organization page for stability.
The v0.3 release series serves to offload some of the code base to the basejump package, freeing bcbioSingleCell up to be lighterweight and easier to maintain long-term.
Note that v0.2 release series will remain pinned to basejump v0.7 series.
CellRanger code will be split out into a separate Chromium R package in a future
update, so some of these SingleCellExperiment-specific methods need to be
consolidated into the basejump package.
Major changes:
aggregateReplicates,cell2sample,combine,plotZerosVsDepth,sampleData,selectSamples,subsetPerSample,topBarcodes: Offloaded to basejump asSingleCellExperimentS4 methods.- Removed generics offloaded to basejump.
barcodeRanksPerSample: Reworked internal code, using improvedcountsPerSampleandrankscalculations.- Updated extract method to work on
SingleCellExperiment, so it can also be inherited forCellRangerS4 class. - Reorganized
metricsPerSamplecode approach.
Minor changes:
- Consolidated S4 validity check code into
AllClasses.Rfile. - Updated Travis and AppVeyor CI configuration.
- Split out some internal code into
barcodes-internal.R. This includes.nCountand.rawMetrics. - Improved documentation for
bcbioSingleCellgenerator function. - Reorganized internal CellRanger processing functions.
- Improved documentation for
CellRangergenerator function. - Reworked plotting function code to integrate with basejump package.
- Split out plotting code methods into internal functions
(e.g.
plotMitoVsCoding.SingleCellExperiment).
Major changes:
- Moved clustering and marker templates to pointillism package, since
all clustering code has been moved there. The quality control template using
the
filterCellsfunction is still provided here.
Minor changes:
prepareSingleCellTemplate: Improved internal code to use updatedprepareTemplate, which has been migrated to basejump package.- Added back the
cellranger_smallexample dataset.
This is a significant maintenance release designed to simplify the package for
long-term stability. Here we are removing code support for Seurat and
visualization of cell clustering. This functionality has been moved to the new
pointillism package. We have streamlined bcbioSingleCell to simply
import bcbio single-cell data using the bcbioSingleCell constructor or
Cell Ranger data with the readCellRanger function. The package continues
to provide quality control visualization (see plotQC) and low-quality cell
removal with the filterCells function.
Major changes:
- Moved clustering and
seuratobject support to pointillism:cellCountsPerCluster,cellTypesPerCluster,clusterCellCountsPerSample,fetchDatafunctions,plotFeaturefunctions,plotGenefunctions,plotMarkerfunctions,plotPCA,plotTSNE,plotUMAP. - Now requiring bcbioBase v0.4+ and basejump v0.7+.
Defunct functions:
- Removed from exports (for simplicifcation):
plotClusters,plotFeatures,quantileHeatmap,readMarkers,readMarkersFile.
Minor changes:
- No longer exporting
mapCellsToSamples. This is now only called internally. - Updated documentation to use roxygen2 v6.1.
Major changes:
- Now recommending BiocManager instead of BiocInstaller to install.
filterCellsnow supportszinbwave = TRUEfor automatic zero-inflation weights calculation, using the zinbwave package.- Now requiring in
bcbioSingleCellobject validity checks that allsampleDatacolumns are defined incolData, and that the factor levels also match. If you run into an error because of this change, post an issue on GitHub and we'll sort it out. The validity check method now also checks to make sure that allmetricsColsare defined incolData. aggregateReplicatesnow keeps track of interesting groups metadata better and returns aSingleCellExperimentcontaining this information.seurattoSingleCellExperimentnow keeps track ofrowRanges, if they have been stashed inside theseuratobject.- Minimal
bcbioSingleCell(indrops_small) andSingleCellExperiment(cellranger_small) objects now contain dimensionality reduction information calculated with Seurat. See the scripts indata-raw/for how this was performed. metrics:SingleCellExperimentmethod now just returnscolDatawithinterestingGroupscolumn defined internally withuniteInterestingGroups. Previously we updated thesampleDatato long format here dynamically, but this is no longer needed now thatcolDataalways must contain sample data in long format.sampleData<-assignment method now dynamically updates the sample metadata incolDatato match.- Simplified
SingleCellExperimentmethod extension forseuratobjects. - Added support for global ggplot2 discrete color palettes using
bcbio.discrete.colorandbcbio.discrete.fillwithoptions.
Minor changes:
- Marker functions are no longer exported as generics, since they only currently apply to Seurat and may be deprecated in the future.
- Improved documentation, specifying the accepted classes for each argument. This matches the conventions now used in bcbioBase and bcbioRNASeq.
- Now using roxygen2 v6.1 for documentation.
metricsmatrixmethod now usesrowRangesinstead ofrowData.mapCellsToSamplesis no longer exported and has been switched to an internal function.- Improved
filterCellsreturn to include the counts per sample, which makes visual inspection and confirmation withplotCellCountseasier. - Added assert checks to plotting functions to stop if
interestingGroups = NULL. Adding support for NULL handling may be a good idea in a future release but isn't a priority at the moment. - Improved factor level handling in
plotCellCountsandplotZerosVsDepthto avoid warnings ifcolDataandsampleDatalevels don't match exactly. This can happen if the sample order is different insampleDatathan incolData.
Major changes:
readCellRangernow supports HDF5 data (.h5 files) or MatrixMarket Exchange Format explicitly, using theformatargument. The function also now supports user-requested import of raw whitelisted cellular barcodes, using thefilteredargument. By default, filtered counts from Cell Ranger are imported.- Removed support for zingeR in
diffExp. We will consider adding this functionality back in a future update, once the package is available on Bioconductor. For now, we're recommending usage of zinbwave. filterCellsnow supportsnCellsargument for hard cutoffs, applied after other QC filtering cutoffs usingnUMI.- Internal data has been renamed to snake_case format, for improved consistency.
Note that
cell_cycle_markersis used in place ofcellCycleMarkers, andcell_type_markersin place ofcellTypeMarkers. There's no easy way to link these files as aliases, so this is a necessary breaking change.
Minor changes:
- Improved R Markdown template defaults for quality control and clustering.
- Now importing functions related to differential expression into the package NAMESPACE, including DESeq2, edgeR, and zinbwave.
- Parallelization is no longer used to load samples, improving handling in an HPC cluster environment. We will consider using BiocParallel in a future update.
- Now requiring ggplot2 v3.0. Switched to using
aesinstead ofaes_stringinternally, using new tidyeval syntax. - Removed additional single-cell toolkit packages in Suggests, including scater and scran. This helps speed up build checks on Travis CI.
- Reexported functions have been moved to the bcbioBase package.
- Improved internal consistency between the
bcbioSingleCellandreadCellRangerdata import functions.
Additional notes:
- Package still works with Bioconductor 3.6 / R 3.4, but we will be migrating to Bioconductor 3.7 / R 3.5 when conda r-base is updated to 3.5.1.
New functions:
cellCountsPerClusterandclusterCellCountsPerSample.
R Markdown templates:
- Now recommending 1000 UMIs by default, and a maximum of 10% mitochondrial transcripts.
- Seurat clustering now calculates multiple resolutions, suggesting 0.4, 0.8, and 1.2 by default. Dimensional reduction plots have been updated to support looping of these multiple resolutions.
Minor changes:
as(object, "SingleCellExperiment")coercion now slots stashed metadata intoSingleCellExperiment, if defined.- Simplified the internal code for
sampleData.seuratobjects now share the same code asSingleCellExperiment, and returnNULLif the sample data is not defined. Themetricsfunction continues to slot empty metadata insampleID,sampleName, andinterestingGroupsif not defined. SingleCellExperimentis used as default method overseuratwhere applicable:fetchDatafamily,plotDimensionalReductionfamily,plotMarkerfamily,plotFeaturefamily,plotGenefamily, andplotCellTypesPerCluster. The internal code hasn't changed, it just is defined primarily forSingleCellExperiment.dimRedargument has been renamed toreduction, where applicable.topBarcodescan now return either adata.frameorlist, containing the top barcodes grouped by sample.
Minor changes:
- Updated internal code to use
textas primary argument inmarkdownHeadercalls. - Updated example datasets and unit tests to match.
- Working on using pbmc4k as example dataset for vignette.
Major changes:
- Multiplexed Cell Ranger barcodes are now reformatted to be more readable
and compatible with the
mapCellsToSamplesutility function. This change helps simplify the internal code forcell2sample. For example in the pbmc4k dataset, the barcode IDs are sanitized fromTTTGGTTTCGCTAGCG-1to "pbmc4k_1_TTTGGTTTCGCTAGCG". The "1" here denotes 1 sample in the matrix, which is how Cell Ranger denotes multiplexed samples in a single counts matrix. Note that the "-" character is illegal in names, so we consistently sanitize barcodes to contain "_" instead. Seehelp("make.names")for more information on syntactically valid names in R. readCellRangerno longer requires reference data defined byrefdataDir, although this is still recommended.
Minor changes:
- Resaved example datasets.
- Switched the example
cellranger_smallandseurat_smalldatasets to the publicly available pbmc4k dataset from 10X Genomics. Here we've subset the top 500 cells and genes by abundance. We'll use either the pbmc4k or pbmc8k dataset for the vignette in a future update. bcbioSingleCellandreadCellRangerfunctions now consistently default to not requiringsampleMetadataFile, which is nowNULLby default. ForbcbioSingleCell, if a custom sample metadata file is not provided, the function reads from the bcbio YAML metadata. ForreadCellRanger, the function usesminimalSampleDatainternally to return minimal metadata, containingsampleNameanddescriptioncolumns.- Broke out internal
.sampleDirsfunction tobcbioSingleCellandreadCellRangerfunctions. - Improved
plotMarkerdocumentation examples to use mitochondrial genes. - Using
seurat_smallin place ofSeurat::pbmc_smallin working examples.
Internal code changes:
- Now consistently using dplyr for piped
data.frameas much as possible, where applicable. Code is being updated to use tidyeval.
Minor changes:
- t-SNE and UMAP plot improvements.
Major changes:
- No longer using automatic camel case sanitization for
metricsorfetchDatareturn column names. - Improved R Markdown clustering and marker templates to optionally support UMAP and dark mode in the YAML parameters.
Minor changes:
- Using original Seurat mapping names for data: tSNE_1, tSNE_2, PC1, PC2, UMAP1, UMAP2.
- Ensure transcript-level counts always have
stripTranscriptVersionscommand applied, to remove the Ensembl transcript versions if present. - No longer using labels (e.g. A, B, C, D) on
ggplotgrid return. - Note that "phase" has been renamed to "Phase" in the R Markdown clustering for cell-cycle regression PCA.
New functions:
- UMAP is now supported. This functionality is provided in:
plotUMAP,plotMarkerUMAP, andplotFeatureUMAP. Corresponding fetch functions,fetchUMAPDataandfetchUMAPExpressionData, have also been added. plotGene: Addedseuratmethod support. If advanced customization of the plot is needed, useplotDotorplotViolininstead, or refer to the Seurat documentation for alternates.
Major changes:
- Dimensional reduction and marker plots no longer use dark mode by default. The default color palette support for marker plots has been improved to consistently use viridis.
diffExp: improved internal code to work directly onSingleCellExperiment, removing the need to passdesignandgroupparameters internally. Also added unit testing against zinbwave, zingeR, and edgeR support. DESeq2 is supported but runs slowly.- Reworked
plotFeatureandplotMarkerfamily of functions. Improved the color palette support whendark = FALSE, now using a flipped viridis plasma color palette. aggregateReplicatesfunction has been reworked to return aSingleCellExperimentobject instead ofbcbioSingleCell. The v0.2.4 update of bcbioRNASeq behaves similarly with this generic.
Minor changes:
- Reworked the internal handling of some
seuratSingleCellExperimentmethod support, usingas(x, "SingleCellExperiment")internally, which uses the newSeurat::Convertfunction. - Made some previously deprecated functions now defunct:
plotClusters,plotTSNEExpressionData,loadSingleCellRun,darkTheme,pcCutoff,quantileHeatmap,plotKnownMarkers,readMarkers,readMarkersFile. - Made
plotFeatures,plotMarker, andplotMarkersfunctions defunct. plotPCElbownow returns a plot grid.sanitizeMarkers: improved internal code for supported bcbio stashed metadata, includingrowRanges.
Minor changes:
plotCellTypesPerClusteris usingdark = TRUEby default again.- Fixed
cell2samplehandling for multiplexed Cell Ranger data loaded up withreadCellRanger. Need to use stashedcell2samplefactor saved inmetadata, rather than attempting to calculate on the fly withmapCellsToSamples. - Updated Travis CI build checks to include bioc-release on macOS.
Major changes:
- No longer attempting to sanitize the rownames for
seuratobjects in coercion method. This helps maintain the gene symbol appearance in plotting functions for genes with hyphens in the names.
Minor changes:
- Using
BiocParallel::SerialParaminternally for zinbwave indiffExp. - Simplified
cell2sampleinternal code to always usemapCellsToSamplesinstead of attempting to use a stashedvectorinsidemetadataforSingleCellExperimentmethod. - Removed internal
.applyFilterCutoffs, which is no longer necessary since this functionality is supported in the S4 subset method. - Simplified assert checks inside
fetchGenefunctions. plotCellTypesPerCluster: revert back todark = TRUEby default.- Consolidated
plotMarkerandplotFeaturefunctions in the documentation. sanitizeMarkers: Improved gene identifier matching.topMarkersnow defaults tocoding = FALSEby default, since not all datasets will contain biotype information.
Minor changes:
- Initial
updateObjectmethod support forbcbioSingleCellclass. - Relaxed
validObjectvalidity check to not require sample-level metadata incolDatayet.
New functions:
- Added support for Uniform Manifold Approximation and Projection (UMAP) with
the
plotUMAPandfetchUMAPDatafunctions. These work similarly to the otherplotDimensionalReductionandfetchDatafunctions.
Major changes:
- Now adding sample-level metadata into
colDataslot, for better downstream compatibility with other packages that work withSingleCellExperimentcontainer class. Unique per-sample rows are still saved internally in thesampleDataslot. - Now recommending ECDF as the default geom for quality control plots, where applicable.
filterCellsnow supportsminUMIs = c("knee", "inflection")for automatic filtering based on the cellular barcode ranks. Internally this is handled byDropletUtils::barcodeRanks.
Minor changes:
- Attempting to re-enable
libgsl-devinstallation for zinbwave on Travis CI. - Suggesting BiocParallel for zinbwave call in
diffExp. - Now importing Seurat functions into NAMESPACE.
- Consolidated
fetchDatafunctions in the documentation. - Consolidated
plotDimensionalReductionfunctions in the documentation. - Updated
aggregateReplicatesinternal code. This function again only supports aggregation ofbcbioSingleCellobjects that have been filtered using thefilterCellsfunction. - Now using
Seurat::Convertinternally to coerceseuratclass object toSingleCellExperiment, usingas(seurat, "SingleCellExperiment"). This utility function was added to Seurat v2.3.1.
Internal changes:
- Tweaked
metricsSingleCellExperimentmethod code to always mergecolDataandsampleData. - Updated
readCellRangerinternal code to matchbcbioSingleCellconstructor, specifically handling sample-level metadata incolData.
Minor changes:
- Updated default QC R Markdown template.
- Added trendline option to QC scatter plot functions.
- Simplified internal handling of interestingGroups in
plotQC. - Using
readYAMLSampleDatainternally instead of defunctsampleYAMLMetadata. - Added
sampleNamesmethod support for seurat. - Now importing rmarkdown, sessioninfo, tidyverse for R Markdown reports, rather than suggesting. Similar update applied to bcbioRNASeq.
- Suggesting scater and scran.
Major changes:
- Overhauled inflection and knee point labeling support in
plotUMIsPerCell. Now uses thepointargument and always labels per sample. Currently requires thegeom = "ecdf"argument for labeling. - Updated default quality control template.
- Added
plotBarcodeRanks.
Minor changes:
- Added barcode rank support for
seuratclass objects. - QC plots now have titles by default, matching the conventions used in bcbioRNASeq.
- Fixed y-axis scale for histogram geom in QC plots.
- Prefiltering of very low quality barcodes with no UMIs or genes is now always applied. This helps avoid unwanted downstream errors with zero count barcodes.
- Added boxplot geom support for
plotReadsPerCell(). plotQCgeom argument is now more consistent across the paneled plots.- Fixed facet wrapping for aggregate samples in the QC plots.
- Added
interestingGroupssupport toplotZerosVsDepth, matching the other QC functions.
- Updated
sampleDataS4 methods to match update in bcbioBase. Now supportscleanargument, which returns non-blacklisted factor columns only. SeebcbioBase::metadataBlacklistfor the blacklist. - Improved axis scale appearance on dimensionality reduction plots using
scales::pretty_breaksinternally. - Added
gridargument to plots, where applicable. - Renamed example dataset from
bcb_smalltoindrops_small. - Removed unnecessary method support for
interestingGroupsandmetadata. These extend fromSummarizedExperimentcorrectly now. - Fixed x-axis label centering for
plotCellCountsandplotReadsPerCell. - Simplified seurat method support for
SingleCellExperiment-like methods, where applicable. This includesrowData,gene2symbol, andinterestingGroups. - Improved dark mode color support for
plotDot,plotFeatureTSNE,plotMarker. - Updated sample metadata example in README.
Minor changes:
- Improved summary statistics output during
filterCellscall. - Miscellaneous documentation improvements, most notably to
bcbioSingleCellconstructor function. plotViolinnow uses a color border by default.- Improved
cell2samplemapping internally forreadCellRanger. - Improved Bioconductor 3.7 installation instructions.
Major changes:
- Now using
bcbioSingleCellinstead ofloadSingleCellas the main constructor function to create abcbioSingleCellobject.loadSingleCellis deprecated and still works, but will warn the user. - Renamed
loadCellRangertoreadCellRangerfor better name consistency. - Quality control function color palettes now default to ggplot2 colors
instead of using viridis palettes. This is defined using
scale_color_hueinstead ofscale_color_viridisfor example. The viridis color palette is still used by default for marker expression plots. - Use "
aggregate" instead of "sampleNameAggregate" to define aggregate/grouped samples in metadata.
Minor changes:
- Reexporting relevant ggplot2 and viridis color palettes.
- Renamed references to "inDrops" from "inDrop", where applicable.
- Consistently using
symin place of.datainternally for tidy code. - Updated
seuratblacklist forsampleDatageneric. plotCellTypesPerClusterandplotMarkerTSNEnow use an automatic color palette by default, which enables for dynamic color palette support whendark = TRUE. Internally this is handled with thetheme_midnightandtheme_paperwhiteggplot2 themes.- Updated installation instructions to support Bioconductor 3.7.
Internal changes:
metricsmethod support now defaults tomatrixand works similarly fordgCMatrixsparse matrices. This is used in place ofcalculateMetricsto generate the per cell quality control metrics.- Reworked and improved
aggregateReplicatesinternal code. - Fixed facet wrapping when
aggregateis defined in metadata for quality control plots. - Improved internal code for
sanitizeMarkersto use map the gene annotations fromrowRangesbetter.
Major changes:
- Added support for calculating
barcodeRanksandbarcodeRanksPerSample. - Now exporting
plotMarkerin addition toplotMarkers. - Primary counts matrix slotted into
assayis namedcountsinstead ofraw, for better consistency withSingleCellExperimentclass. Thecountsgeneric requires that the primary assay slot is namedcountsto work correctly. Nothing else here has changed, just the name. loadCellRangernow returns aSingleCellExperimentobject instead of abcbioSingleCellobject.- Added support for
transgeneNamesandspikeNameswhen loading up a dataset. - Datasets from a poorly annotated genome can now be loaded up using
organism = NULLduring theloadSingleCellcall. - Methods now dispatch on
SingleCellExperimentrather thanbcbioSingleCellwhere applicable, providing support forSingleCellExperimentobjects created elsewhere.
Minor changes:
- Added support for labeling barcode ranks, such as elbow or inflection point on UMI counts per cell plots.
- Added support for plotting metrics using an empirical distribution function (ECDF) plot.
- Use
theme_midnightandtheme_paperwhiteinternally for dimensionality reduction plots. - TSNE and PCA plots now use an aspect ratio of 1 by default.
- Improved imports from Matrix, S4Vectors, and methods.
- Switched back to using base
stop,warning, andmessage. inflectionPointhas been made defunct, in favor of usingbarcodeRanks.- Moved internal constructors into S4 methods, where applicable.
Major changes:
bcbioSingleCellS4 class now extendsSingleCellExperimentinstead ofSummarizedExperiment. This requires definition ofrowRangesinside the object instead ofrowData. Similar functionality was added to the bcbioRNASeq package. Upgrade support will be provided usingupdateObjectin a future release.- Added a differential expression utility function named
diffExp, which uses zingeR/edgeR internally to calculate gene expression changes across cell groups.
Minor changes:
- Added
plotCumulativeUMIsPerCellutility. This may be removed in a future update in favor of adding this plot intoplotUMIsPerCellusing an ECDF plot. - Now using
readCellTypeMarkersto load markerdata.frames, instead ofreadCellTypeMarkersFile. This matches the conventions used in the bcbioBase package.
- Fixes for object subsetting and
loadSingleCellorganism calls
- Improved handling of old Ensembl release version for Cell Ranger output.
- Switched R Markdown templates to consistent snake case formatting for variables and file names.
prepareSingleCellTemplatenow uses_setup.Rinstead ofsetup.R.- Updated unit tests to work with new assert checks.
- Export
mapCellsToSamplesinstead ofcell2sample.cell2samplenow simply acts as an accessor function, returning the internally stored cell2sample mappings rather than trying to calculate.mapCellsToSamplesperforms the actual mapping from cellular barcodes to sample identifiers. - Export
metricsPerSample - Now using
BiocParallel::bpmapplyto loop across the sparse matrix files per sample internally in the.sparseCountsListfunction, which is shared betweenloadSingleCellandloadCellRanger. - Updated assert checks.
- Updated
prepareSingleCellTemplateto explicitly state which files to include for each R Markdown template, rather than inheriting frombcbioBase::prepareTemplate. selectSamplesnow fails on a sample mismatch, rather than warning.- Improved internal code for subset method, adding a
drop = FALSEargument to the cellular barcode matching call. - Made all file loads in working examples a single line.
- Simplified R Markdown directory paths.
- Made all loads in unit tests a single line.
- Renamed
programsmetadata slot toprogramVersions, to improve consistency with bcbioRNASeq package. - Updated internal sample metadata sanitization to ensure all columns are factors.
- Fixes for QC plot labeling of bcbioSingleCell object with different per sample filtering cutoffs applied.
- Added new
fetchGeneDatafunction, that wraps the functionality ofSeurat::FetchDatafor specific genes. - Improved internal dimensionality reduction plotting code. The main function
has been renamed to
.plotDRinternally. - Simplified the code for
fetchTSNEExpressionDatato return a standarddata.framewith the cellular barcodes as rows, instead of the previously groupedtibblemethod. Now this function returns aggregate gene marker calculations in themean,median, andsumcolumns. Since this method has way fewer rows than the groupedtibble, the ggplot2 code forplotMarkerTSNEnow runs faster. - Explicitly declare
viridis::for color palettes, where applicable. colorPointsargument has been renamed toexpressionforplotMarkerTSNE.- Dynamic gene symbol to ensgene conversion has been removed from the plotting
functions, for greater simplicity. Now the
genesargument simply matches against the rownames in the counts matrix of the object. - Decreased the default
minCumPctargument forplotPCElbowfrom 0.9 to 0.8. This is more conservative and will return slightly fewer principal components for dimensionality reduction, by default. plotTSNE,plotPCA, and the other dimensionality reduction-related plotting functions now default to a smaller point size (0.5) and slight alpha transparency (0.8), to make super imposed points more obvious for large datasets with many cells.- Added a working example for
subsetPerSample. - Internally switched from
.onLoadto.onAttachmethod for automatically loading required dependency packages. plotPCAnow usesphaseinstead ofPhaseplotting cell cycle regression as an interestingGroup (see Seurat clustering template). Previously some of the Seurat metadata columns were not consistently sanitized to lowerCamelCase (e.g.Phase,res.0.8,orig.ident).- Suppress package startup messages in R Markdown templates.
- Switched to rlang methods for errors, messages, and warnings:
abort,inform, andwarn. - Updated
filterCellsfunction to enable per sample filtering cutoffs. This works by passing in a named numeric vector, where the names must match the internalsampleIDmetadata column (notsampleName). - Improved internal sanitization of metrics available with the
metricsaccessor. Now all count columns (e.g.nUMI) are consistently integers, and all character vector columns are consistently coerced to factors. - Seurat metadata available through the bcbioSingleCell generics are now
consistently sanitized in lowerCamelCase. This applies to
orig.identand theres.*metadata columns. - Explicit integers are now consistently used in all of the function parameter arguments.
- Manually define functions used to read barcodes and matrices. This improves
the functionality of the internal
.readSparseCountsfunction. - Improved sample directory matching for Cell Ranger output.
- Fixed sample metadata subsetting based on cell2sample factor levels in the internal subset code.
- Added tabbed histogram, violin, and barplots for appropriate quality control functions in the R Markdown code.
- Migrated core dependency imports from basejump to bcbioBase.
- Improved
colnamesandrownameshandling for internal.readSparseCountsfunction. - Reworked
loadCellRangerfunction.refDataDirparameter has been renamed torefdataDir. - Added
organismandgenomeBuildoptions toloadSingleCell, to override the metadata set in the bcbio run, if necessary. - Improved if statement data class checks, where applicable.
- Renamed internal
.sparseCountsTx2Geneto.transcriptToGeneLevelCounts. - Updated
geomeanbind method infetchTSNEExpressionData. - Changed
minNoveltydefault from 0.8 to 0.75. - Improved seurat class support for
plotDot. - Improved parameter names for
plotKnownMarkersDetected. Now usestsneColor,violinFill, anddotColor. Also addedpointsAsNumbersparameter. - Added
subtitleparameter forplotMarkerTSNE. - Added
tsneColor,violinFill,dotColor, anddarkparameters forplotMarkers. - Improved looping method for
plotTopMarkersso that it renders correctly in R Markdown calls. - Added method support for
plotViolin. - Improved internal
cell2samplehandling in subset method code.
- Renamed
readMarkersFiletoreadCellTypeMarkersFile. - Improved internal handling of multiplexed CellRanger samples. These are count
matrices with cellular barcodes ending in
-2, for example. - Updated
aggregateReplicatescode to work with basejump generic, which usesgroupingsinstead ofcellsas the grouping parameter. - Added method support for
detectOrganism. - Improved filtering parameter output in
filterCells. - Updated
gene2symbolmethod support for bcbioSingleCell and seurat objects. - Fixed working example in
knownMarkersDetected. - Reworked internal code for
plotCellTypesPerCluster. - Improved internal checks for facet wrapping and color palette parameter arguments, where applicable.
- Offloaded base
plotQuantileHeatmapfunctionality into basejump, for use in bcbioRNASeq package. - Added unit test data for
loadSingleCell(). - Added additional unit tests to improve code coverage.
- Prepared a minimal working example dataset.
- Added some initial unit tests.
- Renamed
plotKnownMarkerstoplotKnownMarkersDetected. - Renamed
readMarkerstoreadMarkersFile. - Added
gene2symbolmethod support. - Moved
plotDotgeneric to basejump package. - Added internal
.checkFormatfunction, which will check forensgeneorsymbolinput. - Added internal
.convertGenesToSymbolsutility function, for mapping Ensembl gene identifiers to gene symbols. - Use explicit calls to Seurat functions interally, for clarity.
- Simplified bcbioSingleCell object return in
loadSingleCellfunction. - Added seurat class method support for
annotablefunction. - Added
bcbio<-assignment method support for seurat class objects. calculateMetricsfunction now usesannotable = TRUEas default, instead of usingmissingmethod.- Added method support for
cell2samplefor seurat class objects. cellTypesPerClusternow usesminandmaxdefault arguments that don't remove any rows.- Added method support for seurat class objects to
countsfunction. This defaults to returning the raw counts (normalized = FALSE), but can also return log-normalized (normalized = TRUE) and scaled (normalized = "scaled") counts. - Added Ensembl gene identifier mapping support to
fetchTSNEExpressionData. filterCellsnow simply works in a destructive manner. We've removed thedropparameter. The messages displayed to the user during this function call have been improved, and now include more statistics on the step where the majority of cells are filtered.- Initial commit of
gene2symbolmethod support for bcbioSingleCell and seurat class objects. - Improved
interestingGroups<-assignment method support for seurat class objects. - Color palettes now default to viridis instead of inferno palette, where applicable.
- Added Ensembl gene identifier support for
plotDotfunction. plotFeatureTSNEnow uses a pluralfeaturesparameter instead offeature, which is consistent with the syntax used in the other functions.- Added Ensembl gene identifier support to
plotMarkerTSNE. Theformatargument still defaults to "symbol", for consistency with previous behavior. However, in the future we recommend that users pass in stable Ensembl gene identifiers here if possible, for better reproducibility. plotMarkersnow supports Ensembl gene identifiers.plotPCElbownow silently returns the sequence of principal components (PCs) that we recommend to use for dimensionality reduction.- We're now using "glm" instead of "gam" for
geom_smoothplotting, where applicable. See theplotQCfunction code. - Improved the defaults for
plotQuantileHeatmapto enable faster plotting. Now the dendrogram calculations are skipped by default, which take a long time for large datasets. - Removed the draft
plotStressGenesfunction for now. Will try to add this in a future update. - Fixed Markdown header handling for
plotTopMarkersifheaderLevel = NULL. - Simplified
selectSamplescode to rely upon output of our bracket-based subsetting method. Seesubset.Rfile for more details. - Improved metadata update in bracket-based subsetting method.
subsetPerSamplefunction now defaults to saving in the working directory.- Updated
topBarcodesfunction to rank bynUMIinstead ofnCountcolumn, so it works with data from either bcbioSingleCell or seurat objects. - Minor tweaks to seurat coercion from bcbioSingleCell object. Here we've improved the metadata slotting.
- Initial commit of example data script in the
data-raw/directory!
- Raw cellular barcodes are now slotted in
object@cellularBarcodesas adata.frameinstead of a per samplelist. This makes downstream subsetting operations on the barcodes simpler. - Bug fixes for
cell2samplemapping. - Switched back to stable CRAN version of roxygen2 (6.0.1) for documentation.
- Renamed
pcCutofftoplotPCElbow. The function now returns a PC sequence from 1 to the cutoff (e.g. 1:10) instead of just the final PC cutoff value. The R Markdown clustering template has been updated to reflect this change. - Renamed
quantileHeatmaptoplotQuantileHeatmap, for consistency with other plotting functions. - Initial support for customized bracket based subsetting, which now acts upon
the raw cellular barcode counts stashed in the
object@bcbioslot. - Moved
darkThemeto basejump package and reworked asmidnightTheme, with improved colors and axis appearance. - Added
pointsAsNumbersparameter toplotTSNEandplotPCAfunctions, to match the functionality inplotMarkerTSNE. - Overhauled
loadCellRangerto support multiplexed Cell Ranger matrix output. Cell Ranger adds a numeric suffix to the end of multiplexed barcodes (e.g.AAACCTGGTTTACTCT-1denotes cellular barcodeAAACCTGGTTTACTCTis assigned to sample1). - Improved
cell2samplemapping inaggregateReplicatesfunction, which uses thesampleNameAggregatecolumn in sample metadata to define the aggregate sample pairings. Thesummarizestep at line 101 is slow for datasets with many samples and should be changed in the future to speed things up. - Improved internal
cell2samplecode to handleNULLstashed mappings better. - Updated TNSE plotting functions to use
midnightThemeinstead ofdarkTheme. - Added user-defined point and label sizes for
plotMarkerTSNE. - Fixed typo in
plotMitoRatiowheremaxGenescutoff was plotted instead ofmaxMitoRatio. - Added
legendparameter argument toplotQCfunction. Also improved handling ofNULLreturn forplotReadsPerCell, which can happen with Cell Ranger output. - Updated facet wrapping in
plotZeroesVsDepthto match the behavior in the other plotting functions. - Initial methods support for custom bracket-based subsetting.
- Improved facet wrapping of aggregated samples (
sampleNameAggregatepresent in sample metadata), but removing code support for wrapping by multiplexed FASTQ description. - Simplified handling of
bcbioSingleCellobjects withfilterCellsapplied. This information is stored in themetadataslot as 3 variables: (1)filterParams, numeric vector of the parameters used to define the cell filtering cutoffs; (2)filterCells, character vector of the cellular barcode IDs that passed filtering; (3)filterGenes, character vector of the Ensembl gene identifiers that have passed filtering, as determined by theminCellsPerGeneparameter. - For
filterCellsreturn, we're now defaulting to a destructive operation, where the columns (cells) and rows (genes) of the object are adjusted to match the cells and genes that have passed filtering. Currently this can be adjusted with thedropargument for testing, but should generally be left asdrop = TRUE. - We're now slotting a
cell2samplenamed factor in themetadataslot, which makes downstream quality control operations faster. This is generated on the fly for previously saved objects that don't have a stashedcell2sample. - Initial commit of
plotQCutility function, which plots multiple quality control functions for easy visualization. This defaults to output as a cowplot grid (return = "grid"), but can alternatively be set to return R Markdown code (return = "markdown"). aggregateReplicatesoperation has been improved to properly slot raw cellular barcodes inobject@bcbio$cellularBarcodes. ThefilterCellsvector is adjusted, andsampleMetadatafactors should be properly releveled.- The
countsaccessor simply returns the sparse matrix contained in theassayslot. ThefilterCellsargument has been removed. - Messages have been added to the
filterCellsfunction, to help the user determine at which step the majority of cells are being filtered. We're keeping a non-destructive option usingdrop = FALSEfor the time being, but this will likely be removed for improved simplicity in a future update. - Updated the internal code for
metricsto use a simpler join operation on thecolData,cell2sampleandsampleMetadata. - Updated facet wrap code in quality control plots to not facet multiplexed
FASTQ descriptions and simply check for
sampleNameAggregate. - Improved appearance of
plotReadsPerCelllabels and legends. Additionally,plotReadsPerCellmore efficiently handles the stashed values in thenCountcolumn ofcolData, for faster plotting that having to rely on manipulation of the rawcellularBarcodeslist stashed inobject@bcbio$cellularBarcodes. sampleMetadatareturn is now consistently sanitized forbcbioSingleCellandseuratobjects.- Minor tweaks to quality control template and setup.R files.
- Added
plotFeatureTSNEutility function. This improves onSeurat::FeaturePlotand enables the user to overlay the cluster identifiers on top of the t-SNE plot.plotFeaturesis now deprecated in favor of this function. - Improved internal handling of Seurat data in the
.fetchDimDataSeuratfunction. This now keeps the cell ID as the rowname. - Allow the user to define the color palette (
color), as well aspointSizeandlabelSizeforplotPCAandplotTSNE. - Factors are now correctly releveled in
cell2samplereturn. - Improved internal code for
fetchTSNEExpressionData. - Bug fix for
metricsaccessor not including the cell ID as rownames. - Clustering template fixes. Now uses
plotFeatureTSNEto assess quality control metrics on t-SNE.
- Now internally stashing a
cell2sampledata.frame, which helps speed up operations on cellular barcode metrics calculations for quality control plots. - Improved support for optional
annotable,ensemblVersion,gtfFile, andsampleMetadataFilearguments inloadSingleCellfunction. - Simplified some of the messages shown during sample loading, in an attempt to
make them clearer and more informative. Also improved messages shown to the
user during a
filterCellsfunction call. - The
metricsfunction will now look for a stashedcell2sampledata.frame, which speeds up operations for quality control plots. - Improved handling of sample metadata columns as factors. In particular, levels
should be correctly updated using
droplevelsin aselectSamplescall. The bcbioRNASeq package has also been updated to work in a similar fashion, where all columns in the sample metadata data.frame are now defined as factors. - Simplified
bcbioSingleCelltoseuratobject coercion to stash all of the bcbio metadata, and simply return the basicseuratobject, rather than trying to also perform normalization and scaling. These steps have instead been added back to the Seurat R Markdown clustering template. - Updated cell cycle and cell type markers from our master copy on Google Sheets.
- Added a troubleshooting section to the GitHub README, with a note on maximum DLLs.
- Updated package imports to match Bioconductor 3.6.
- Initial support for
plotCellTypesPerCluster. - Initial support for
plotMitoVsCoding. I broke this code out fromplotMitoRatio. We could opt to keep this inplotMitoRatiowith ageom = "scatterplot"argument. - Initial commit of
.applyFilterCutoffsinternal function, used to subset the object to contain only cells and genes that have passed quailty control filtering. - Improved Seurat
FindAllMarkerssanitization. - Made the quality control plots more modular. Now they support multiple geoms,
including
boxplot,histogram,ridgeline, andviolin(default). Median labels are applied with the internal.medianLabelsfunction. - Updated error message for Cell Ranger directory structure.
- Cellular barcode columns are no longer split with an underscore. Instead, they
are kept as a single ACGT string. We're now generating
cellIDtosampleIDmatching with a different method. In the future, we'll stash a cell2sample data.frame inside the object, that makes this operation faster than the currentmclapplycode. - Updated annotable support in
loadSingleCellandloadCellRanger. - Added support for handling both gene- and transcript-level counts. The updated release of the bcbio single-cell pipeline now outputs at gene level.
- Initial quality control plot support for seurat objects.
- Added support for return of only filtered cells and genes with the
counts(filterCells = TRUE)function. - Added assignment support for
interestingGroups<-. - Initial support for sample metadata generation from seurat object.
- Improved internal code for
selectSamples. - Updated
topMarkersto match Seurat v2.1 update. - Improved
bcbioSingleCelltoseuratcoercion method withsetAs.
- Upgraded to basejump 0.1.0 and Seurat 2.1.0 dependencies.
- Improved documentation of NAMESPACE imports per function.
- Switched to base grep functions where applicable (
grepl,gsub). - Use GTF in package documentation rather than GFF. Applies primarily to the
loadSingleCellimport function. - Restrict class support in S4 methods to
bcbioSingleCell. LegacybcbioSCDataSetclass can be upgraded tobcbioSingleCellclass usingas(bcb, "bcbioSingleCell")coercion. - Use filtered cell output for
metricsand quality control functions by default. - Updated the quality control R Markdown to include
filterCells = FALSEwhere applicable. - Draft support for aggregated technical replicates in quality control functions
using
sampleNameAggregatecolumn in sample metadata. This doesn't change the actual counts values. It only applies to visualization in the quality control plots currently. - Miscellaneous R Markdown template updates. Primarily improvements to the setup chunk object loading workflow.
- Removed lintr checks from testthat. This is breaking
devtools::test.
- Renamed main object class from
bcbioSCDataSettobcbioSingleCell. - Cell filtering with
filterCellswill now slot a named logical vector intometadata(object)[["filteredCells"]], which will be used to dynamically subset the slotted internalSummarizedExperimentdata. Now that we're using this approach, we can return a modifiedbcbioSingleCellobject rather than defining a separatebcbioSCFilteredclass. - Renamed
loadSingleCellRuntoloadSingleCell, to match bcbioRNASeq package. - Now allowing implicit integers in our function code.
- Added support for plotting technical replicates. This is handled by
sampleNameAggregatein the sample metadata. - Now using ridgeline plots in place of histograms where applicable.
- Travis CI checks take too long when loading SummarizedExperiment. Hopefully this will be fixed in the 3.6 release later this month.
- New internal dark theme (
darkTheme), based on the Seurat theme. - Initial commit of
plotDotfunction, based onSeurat::DotPlot. - Added new t-SNE plots that allow for consistent cluster labeling.
- Providing legacy support for
bcbioSCDataSetandbcbioSCFiltered, which will be deprecated in a future release. - Offloaded some internal code to basejump, for improved consistency with
bcbioRNASeq package:
internal-projectDir.R,internal-readSampleMetadataFile.R,internal-sampleDirs.R. We may want to provide this code as a shared bcbio core package (e.g. bcbioBase) in the future. - Added internal utility to check for valid marker genes (
.validMarkers). - Improved Ensembl release version support (
ensemblVersion).
- Renamed
plotClusterstoplotMarkers. Added soft deprecation. - Added viridis color support in t-SNE plots and heatmaps.
- Converted
loadSingleCellRunandloadCellRangerfrom S4 generics back to standard functions. - Added t-SNE utility functions:
fetchTSNEData,fetchTSNEExpressionData, andplotTSNEExpressionData. This enable plotting of geometric mean values of desired marker genes. - Updated NEWS to Markdown, with hyperlinks.
- Offloaded generics that would otherwise conflict with bcbioRNASeq to the basejump package.
- Improved roxygen2 documentation. Moved as much documentation as possible to the methods files.
- Updated
cellCycleMarkersandcellTypeMarkersdata. Now supports Drosophila. - Sample IDs are now sanitized using
make.namesinstead ofcamel. This avoids undesirable coercion of some IDs (e.g.group1_1intogroup11). - Added recommended package syntax guidelines.
- lintr checks now allow implicit integers (e.g.
1instead of1L). - Added Seurat as dependency in
DESCRIPTIONfile. The package now attaches Seurat automatically. - Package no longer imports mononcle or suggests scater, scde, or scone. We're planning on adding these back in a future update, but build checks on Travis CI otherwise take too long.
- Added new
quantileHeatmapfunction. - Improved Markdown header support across functions, where applicable.
- Improved
bcbioSCFilteredtoseuratcoercion to slot relevant bcbio metadata.
- Renamed package from
bcbioSinglecelltobcbioSingleCell. - Added viridis color palette support to quality control plots.
- Added cell-cycle marker genes for human and mouse.
- Slotted
organisminbcbioSCDataSetmetadata, in addition togenomeBuild. - Updated
bcbioSCFilteredtoseuratcoercion method to also runFindVariableGenesandScaleDataby default. - Added cell-cycle regression into Seurat clustering R Markdown template.
- Improved pkgdown settings and website appearance.
- Support for CRAN release of Seurat.
- Improved documentation of package NAMESPACE in
bcbioSinglecell-package.Rfile. - Offloaded
downloadfunctionality to basejump package, to avoid collisions with bcbioRNASeq package. Function has been renamed toexternalFile. - Removed function deprecations to simplify the NAMESPACE.
- Improved Cell Ranger sample matching. With these changes the internal
.detectPipelinefunction is no longer needed. - Improved sample directory matching in internal
.sampleDirsfunction. - Updated paths to Cell Ranger MatrixMarket files in internal
.readSparseCountsfunction. - Updated use of
packageSEtoprepareSE, matching the corresponding basejump function change. - Renamed internal use of
filtertotidy_filter, to avoid future NAMESPACE collisions with ensembldb package. - Renamed
bcbioSCSubsetclass tobcbioSCFilteredclass. - Fixed memory issue in
plotZeroesVsDepthfor datasets with high cell counts. - Improved sample matching for
selectSamples. Will attempt to migrate this to bracket-based subsetting in a future update. - Restricted sample selection with
selectSamplesto only work onbcbioSCFilteredclass for the time being. We can add bracket-based subsetting or S4 method support inselectSamplesto properly work onbcbioSCDataSetclass in a future update. - Updated R Markdown template settings and simplified the setup chunks.
- Initial support for
bcbioSCFilteredclass coercion to monocleCellDataSetclass. - Suggest scater and scone packages for additional quality control and visualization.
- Require monocle >= 2.5.0.
- Added initial support for viridis color palette in quality control plots.
- Suggest rmarkdown and scde packages.
- Initial commit of
subsetPerSamplefunction. - Miscellaneous RMarkdown template improvements.
- Renamed functions in
lowerCamelCasefromsnake_case. - Draft support for monocle, scater, and scone.
- Package now depends on SummarizedExperiment.
- Renamed
loadRuntoloadSingleCellRunfor improved compatibility with bcbioRNASeq package. This helps avoid NAMESPACE collisions between packages. - Improved support for custom GTF files.
- Split out Cell Ranger import into a separate utility function named
loadCellRanger. - Added plotZerosVsDepth() by @roryk.
- Renamed
filteringCriteriatofilterParamsin@metadataslot. - Miscellaneous documentation fixes.
- Migrated plotting functions to S4 methods.
- Improved sample metadata handling.
- Updated sample name and cellular barcode sanization.
- Initial commit of Seurat utility functions.
- Initial commit of YAML parameters for RMarkdown templates.
- Draft support for Seurat v2 pre-release.
- Initial support for SureCell UMIs.
- Integrated bcbio and Cell Ranger workflows into
load_run.
- Initial support for S4 object creation using SummarizedExperiment.
- Updated RMarkdown templates.
- Compatibility update for basejump S4 NAMESPACE changes.
- Improved plots for quality control and filtering.
- Renamed mitochondrial plot functions.
- Changed presentation of mitochondrial abundance as ratio instead of percentage.
- Simplified NAMESPACE by offloading dependencies to basejump.
- Initial support for loading of 10x Genomics Cell Ranger output.
- Add detection of droplet method based on the metadata file.
- Draft support for import of inDrop i5 index barcode counts.
- Modified
load_runfunction for improved consistency with bcbioRNASeq package. - Initial incorporation of scater package into workflow.
- Initial commit of RMarkdown template skeletons.
- Improvements to run object based on code in bcbioRNASeq package.
- Better handling in plots for datasets with many samples.
- Labeled quality control cutoffs on the plots.
- Prepared package for tidyverse dependency updates.
- Updated HPC server detection.
- NAMESPACE consolidation and function cleanup.
- Added quality control plotting functions.
- Converted all functions to standard evaluation.
- Initial draft release.