Recent Releases of sccomp

sccomp - v2.1.11

What's Changed

  • deprecate remove variation for remove effects by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/205
  • Enhance sccomppredict and summaryto_tibble functions to support rob… by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/207
  • Refactor tests for replicatedata to handle Xrandomeffectunseen by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/209
  • Fdr plot messaging by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/208
  • Fix converge metrics for random effect by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/210
  • Adapt to ggplot2 s7 by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/213
  • Add pkgdown workflow for R package deployment by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/212

Full Changelog: https://github.com/MangiolaLaboratory/sccomp/compare/v2.1.9...v2.1.11

- R
Published by stemangiola 8 months ago

sccomp - v2.1.9 Fix design matrix for edge cases with NA factors

What's Changed

  • Enhance NA handling in complex interaction design matrix by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/206

Full Changelog: https://github.com/MangiolaLaboratory/sccomp/compare/v1.99.19...v2.1.9

- R
Published by stemangiola 8 months ago

sccomp - v1.99.19 Allow unknown factors and new groups

What's Changed

  • Improve random effects by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/195
  • Check columns of tidy eval by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/166
  • merge matser by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/196
  • Improve args type by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/198
  • Reorganise methods by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/200
  • Add GitHub Actions workflow for R-CMD-check with CmdStan integration by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/202
  • Add prettydoc package to GitHub Actions workflow dependencies by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/203
  • Add print method for sccomp objects and related functionality by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/201
  • Update prepare_replicate_data to use original_formula_composition… by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/204

Full Changelog: https://github.com/MangiolaLaboratory/sccomp/compare/v1.99.18...v1.99.19

- R
Published by stemangiola 9 months ago

sccomp - API robustness

What's Changed

  • add check and test by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/176
  • update model by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/168
  • add check for factor consistency by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/134
  • fix factor testing by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/179
  • fix check for ~ 1 formula by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/181
  • Improve boxplot by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/183
  • Create pkgdown.yaml by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/173
  • improve the documentation of sccompproportionalfold_change by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/185
  • If estimate and remove_outliers are calculated with different fit met… by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/188
  • track fit method in the attributes by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/189
  • 9 significant figures by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/182

Full Changelog: https://github.com/MangiolaLaboratory/sccomp/compare/v1.99.8...v1.99.18

- R
Published by stemangiola 11 months ago

sccomp - Adjust versioning for Bioconductor to x.99.z for major update

Full Changelog: https://github.com/MangiolaLaboratory/sccomp/compare/v2.1.7...v1.99.8

- R
Published by stemangiola about 1 year ago

sccomp - v2.1.7 Fixes edge cases and warnings

What's Changed

  • Fix fold prop change calculation by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/170
  • change the way I check package by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/171

Full Changelog: https://github.com/MangiolaLaboratory/sccomp/compare/v2.1.6...v2.1.7

- R
Published by stemangiola about 1 year ago

sccomp - v2.1.6

This release introduce improvements in visualisation and result reporting and several fixes.

What's Changed

  • Fix boxplot with no significance by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/158
  • version UP by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/161
  • add parameter, tests and docs by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/164
  • Fixes for hca by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/162

Full Changelog: https://github.com/MangiolaLaboratory/sccomp/compare/v1.9.1...v2.1.6

- R
Published by stemangiola about 1 year ago

sccomp - Major update random effect + proportion input + cmdstanr backend

We are thrilled to introduce a host of significant updates and new features in this latest release of sccomp. These enhancements are designed to provide you with more powerful tools for compositional data analysis, improve usability, and offer greater flexibility in your workflows.

1. Support for Random Effects Modeling

One of the most substantial additions is the implementation of random effects modeling within the sccomp framework. This feature allows you to incorporate hierarchical or nested data structures into your analyses, which is particularly beneficial when dealing with complex experimental designs.

Key Advantages: - Hierarchical Data Analysis: You can now model data that has multiple levels of variability, such as measurements nested within subjects or samples collected across different time points. - Flexibility in Model Specification: The inclusion of random effects provides greater flexibility in specifying models that accurately reflect the underlying structure of your data.

2. Direct Input of Proportion Data

We have introduced the ability to input proportion data directly into the sccomp functions. This should not be used if counts are present. It is though to model proportions when counts are not available, for example as result of deconvolution.

Key Advantages: - Greater Data Compatibility: Allows for the integration of data from different sources that may already be in proportion form. - Enhanced Flexibility: Facilitates the analysis of data types where counts are not available, such as percentages or fractions.

3. Refactoring and Performance Improvements

Significant effort has been put into refactoring the codebase and optimizing performance. This includes rebasing the master branch and cleaning up the code to enhance readability and maintainability.

Key Enhancements: - Codebase Streamlining: Multiple rebasing efforts (#45, #54, #125, etc.) have resulted in a cleaner, more efficient codebase. - Model Function Improvements: Refactoring of model functions (#150, #152) enhances computational efficiency and eases future development. - Nested Grouping with Cmdstanr: Integration of nested grouping capabilities using cmdstanr (#151, #153) allows for more sophisticated statistical modeling.

4. Enhanced Customization and Control

We have added features that give you more control over the analysis process and outputs.

Key Enhancements: - Custom Output Samples for Variational Bayes: You can now specify the number of output samples when using variational Bayes methods (#137), allowing you to balance between computational speed and estimation precision. - Deprecation of Redundant Arguments: Cleaning up the function arguments (#155) makes the functions easier to use and reduces confusion. - Residual Calculation Updates: Changes to how residuals are calculated (#124) improve the accuracy of model diagnostics.

5. Documentation and Usability Improvements

We recognize the importance of clear documentation and have made substantial updates to enhance your user experience.

Key Enhancements: - Updated README and Vignettes: The README file and accompanying vignettes have been thoroughly updated (#141) to reflect all new features and provide detailed guidance on how to use them. - Attribute Passing Improvements: Modifications to how attributes are passed between functions (#140) improve the consistency and reliability of the package. - User Messages and Warnings: Informative messages have been added (#148) to help you understand the progress of computations and alert you to potential issues.

6. Additional Features and Fixes

Several other enhancements and bug fixes have been implemented to improve the overall functionality of sccomp.

Key Enhancements: - Proportion Difference Calculation: A new feature to calculate the difference in proportions directly (#147), aiding in the interpretation of results. - Environment Handling in Formulas: Adjustments to formula handling (#142) prevent potential errors related to variable scope and environment. - Instantiation and Initialization Improvements: Enhancements to how models are instantiated (#136) lead to more stable and faster model fitting.

Full Changelog: https://github.com/MangiolaLaboratory/sccomp/compare/v1.7.12…v1.9.1

For a comprehensive overview of all changes and detailed instructions on how to utilize the new features, please refer to the README.

We believe these updates will significantly enhance your data analysis capabilities using sccomp. The support for random effects modeling and direct proportion data input, in particular, open up new avenues for sophisticated and flexible analyses. We are committed to continuous improvement and welcome any feedback you may have.

Thank you for your continued support, and we hope you find these new features valuable in your research.

What's Changed PR list

  • rebase master by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/45
  • rebase by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/54
  • rebase by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/125
  • rebase master by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/128
  • rebase by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/131
  • rebase by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/132
  • Instantiate by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/136
  • allow custom output samples for vb by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/137
  • update functions to be exposed by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/139
  • pass the attribute by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/140
  • update README and vignette by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/141
  • rebase by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/143
  • drop environment from formula and quotes by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/142
  • rebase by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/144
  • Calculate proportion difference by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/147
  • add message by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/148
  • Refactor model functions by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/150
  • Cmdstanr nested grouping by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/151
  • Refactor model functions by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/152
  • Cmdstanr nested grouping by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/153
  • Cmdstanr by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/84
  • deprecate argument by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/155
  • Change residuals by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/124
  • Proportions by @stemangiola in https://github.com/MangiolaLaboratory/sccomp/pull/126

Full Changelog: https://github.com/MangiolaLaboratory/sccomp/compare/v1.7.12...v1.9.1

- R
Published by stemangiola over 1 year ago

sccomp - More permissive logit threshold for significance

What's Changed

  • fif checks by @stemangiola in https://github.com/stemangiola/sccomp/pull/129

Full Changelog: https://github.com/stemangiola/sccomp/compare/v1.7.7...v1.7.12

- R
Published by stemangiola almost 2 years ago

sccomp - v1.7.7 Variational + Random effects multivariate

What's Changed

  • Update array syntax, fabs, dirichlet_multinomial by @andrjohns in https://github.com/stemangiola/sccomp/pull/111
  • update theme by @stemangiola in https://github.com/stemangiola/sccomp/pull/118
  • .x does not exist here by @stemangiola in https://github.com/stemangiola/sccomp/pull/119
  • When the sum of generated count is 0, the division was returning null… by @stemangiola in https://github.com/stemangiola/sccomp/pull/120
  • Add multivariate prior by @stemangiola in https://github.com/stemangiola/sccomp/pull/114
  • allow arbitrary contrasts to be plotted by @stemangiola in https://github.com/stemangiola/sccomp/pull/121
  • Variational default by @stemangiola in https://github.com/stemangiola/sccomp/pull/127

New Contributors

  • @andrjohns made their first contribution in https://github.com/stemangiola/sccomp/pull/111

Full Changelog: https://github.com/stemangiola/sccomp/compare/v1.7.2...v1.7.7

- R
Published by stemangiola almost 2 years ago

sccomp - New tidy interface

We announce the new tidy and modular interface for a sccomp, which improves modularity, and clarity. The main change is the modularisation of sccomp in functions which can be linked with the pipe operator |>.

| Function | Description | |-----------------------------------|-------------------------------------| | Estimation: sccomp_stimate() | which is usually run once in the analysis (per model). | | Testing: sccomp_test() | which candy run multiple times, depending on how many contrasts you want to test (e.g. age, untreated vs treated). | | Outlier removal: sccomp_remove_outliers() | which is usually run once after sccomp_estimate() in case you want to produce estimates not influenced by outlier data points. | | Unwanted variation removal: sccomp_remove_unwanted_variation() | which is run after sccomp_estimate() and produces a dataset that just preserve the variability of your factor of interest. | | Data replication: sccomp_replicate() | which is run after sccomp_estimate() and produces a dataset representing the theoretical data distribution according to the model (from the posterior distribution). | | Plotting: plot() | which is run after sccomp_test and outputs a series of summary plots. |

Deprecation of the function sccomp_glm()

The new framework

```{r fit, warning=FALSE, message=FALSE, cache=TRUE}

outlierfreeestimate = seurat_obj |>

# Estimate sccompestimate( formulacomposition = ~ type + continuouscovariate, .sample = sample, .cellgroup = cell_group, cores = 1 ) |>

# Remove outliers sccompremoveoutliers(cores = 1)

Test

outlierfreeestimate |> sccomp_test(contrasts = "typehealthy")

```

New functionalities

Removal of unwanted variation.

For visualisation purposes, we can select factor of interest we would like to preserve the effect for, end exclude all the rest. For example, if we want to produce a dataset with just the type effect, we can execute

{r} outlier_free_estimate |> sccomp_remove_unwanted_variation(~ type)

Plotting

The bloating functionalities have been improved. Now, both discrete and continuous variables can be visualised overlaying the to reticle data distribution from the model. This helps the user understanding whether the model is descriptively adequate to the data.

For example, if the theoretical data distribution from the sccomp does not overlap with the observed data distribution, this is an indication that the probability distribution used by sccomp is not suitable for the data or a different model (design matrix) should be used.

```{r, warning=FALSE, message=FALSE} outlierfreeestimate |> sccomp_test(contrasts = "typehealthy") |> plot()

```

Now plotting the test against the continuous covariate

```{r, warning=FALSE, message=FALSE} outlierfreeestimate |> sccomptest(contrasts = "continuouscovariate") |> plot()

```

What's Changed

  • Drop distinct random effect by @stemangiola in https://github.com/stemangiola/sccomp/pull/79
  • add attributes by @stemangiola in https://github.com/stemangiola/sccomp/pull/80
  • if continuous do not multiply by covariate by @stemangiola in https://github.com/stemangiola/sccomp/pull/82
  • rebase by @stemangiola in https://github.com/stemangiola/sccomp/pull/83
  • avoid QR decomposition for random effects by @stemangiola in https://github.com/stemangiola/sccomp/pull/81
  • add outliers tests by @stemangiola in https://github.com/stemangiola/sccomp/pull/86
  • add completion also to sccomp from counts by @stemangiola in https://github.com/stemangiola/sccomp/pull/98
  • Improve arguments by @stemangiola in https://github.com/stemangiola/sccomp/pull/101
  • Add controls on contrasts by @stemangiola in https://github.com/stemangiola/sccomp/pull/104
  • Separate outlier in two methods by @stemangiola in https://github.com/stemangiola/sccomp/pull/87
  • change github actions by @stemangiola in https://github.com/stemangiola/sccomp/pull/105

Full Changelog: https://github.com/stemangiola/sccomp/compare/v1.3.5...v1.7.2

- R
Published by stemangiola about 2 years ago

sccomp - multilevel implementation for submission

- R
Published by stemangiola over 2 years ago

sccomp - pre-submission

- R
Published by stemangiola about 3 years ago