Skip to content

Commit

Permalink
added dream mixed models
Browse files Browse the repository at this point in the history
  • Loading branch information
Thomas-Rauter committed Oct 10, 2024
1 parent 9f684e2 commit 9f9415e
Show file tree
Hide file tree
Showing 129 changed files with 11,010 additions and 11,541 deletions.
2 changes: 2 additions & 0 deletions .Rbuildignore
Original file line number Diff line number Diff line change
Expand Up @@ -20,3 +20,5 @@
_pkgdown.yml$
^CITATION\.cff$
^CHANGELOG\.md$
^SplineOmics.BiocCheck$

77 changes: 50 additions & 27 deletions DESCRIPTION
Original file line number Diff line number Diff line change
Expand Up @@ -3,44 +3,67 @@ Type: Package
Title: Streamlines the process of analysing omics timeseries data with splines
Version: 0.1.0
Date: 2024-08-13
Authors@R: person("Thomas", "Rauter", email = "[email protected]", role = c("aut", "cre"))
Maintainer: Thomas Rauter <[email protected]>
Description: Timeseries analysis of omics data can be carried out by fitting spline curves to the data and using limma for hypothesis testing. For this, the right spline freedom and further hyperparameters must be identified, and the obtained hits clustered based on the spline shape.The R package splinetime streamlines this whole process and generates reports.
Depends: R (>= 4.3.0)
Authors@R: person("Thomas", "Rauter",
email = "[email protected]",
role = c("aut", "cre"),
comment = c(ORCID = "0009-0004-5578-3628"))
Description: SplineOmics streamlines the analysis of time-series omics data
by fitting spline curves and using limma for hypothesis testing. It requires
a data matrix with features (e.g., proteins, metabolites) in rows and time
point samples in columns, with no missing values. Metadata about the samples
can be provided through a separate meta table, and an optional annotation
table can supply additional feature identifiers. The package provides several
capabilities: exploratory data analysis through HTML reports with plots like
PCA and heatmaps, hyperparameter screening for limma splines, and spline-based
limma analysis to identify significant features. Users can cluster these
significant features and perform gene set enrichment analysis (GSEA) on the
clusters. All results are presented in HTML reports to facilitate easy
interpretation and visualization.
License: MIT + file LICENSE
URL: https://csbg.github.io/SplineOmics
BugReports: https://github.com/csbg/SplineOmics/issues
biocViews: TimeCourse, GeneExpression, Proteomics, Metabolomics, Transcriptomics,
Clustering, StatisticalMethod, Visualization, Software, GeneSetEnrichment
Depends: R (>= 4.3.0)
Imports:
ComplexHeatmap(>= 2.18.0),
base64enc(>= 0.1-3),
dendextend(>= 1.17.1),
dplyr(>= 1.1.4),
ggplot2(>= 3.5.1),
ggrepel(>= 0.9.5),
here(>= 1.0.1),
limma(>= 3.58.1),
openxlsx(>= 4.2.5.2),
patchwork(>= 1.2.0),
pheatmap(>= 1.0.12),
progress(>= 1.2.3),
purrr(>= 1.0.2),
rlang(>= 1.1.4),
scales(>= 1.3.0),
svglite(>= 2.1.3),
tibble(>= 3.2.1),
tidyr(>= 1.3.1),
zip(>= 2.3.1)
ComplexHeatmap (>= 2.18.0),
base64enc (>= 0.1-3),
dendextend (>= 1.17.1),
dplyr (>= 1.1.4),
ggplot2 (>= 3.5.1),
ggrepel (>= 0.9.5),
here (>= 1.0.1),
limma (>= 3.58.1),
openxlsx (>= 4.2.5.2),
patchwork (>= 1.2.0),
pheatmap (>= 1.0.12),
progress (>= 1.2.3),
purrr (>= 1.0.2),
rlang (>= 1.1.4),
scales (>= 1.3.0),
svglite (>= 2.1.3),
tibble (>= 3.2.1),
tidyr (>= 1.3.1),
variancePartition (>= 1.14.0),
zip (>= 2.3.1),
grDevices,
grid,
splines,
stats,
tools,
utils
Suggests:
BiocManager,
edgeR(>= 4.0.16),
clusterProfiler(>= 4.10.1),
edgeR (>= 4.0.16),
clusterProfiler (>= 4.10.1),
rmarkdown (>= 2.7),
knitr,
testthat,
readxl,
rstudioapi(>= 0.16.0),
rstudioapi (>= 0.16.0),
conflicted (>= 1.2.0)
Encoding: UTF-8
LazyData: true
LazyData: false
RoxygenNote: 7.3.2
Config/testthat/edition: 3
VignetteBuilder: knitr
3 changes: 3 additions & 0 deletions NAMESPACE
Original file line number Diff line number Diff line change
Expand Up @@ -143,4 +143,7 @@ importFrom(tools,file_path_sans_ext)
importFrom(utils,combn)
importFrom(utils,head)
importFrom(utils,tail)
importFrom(variancePartition,dream)
importFrom(variancePartition,eBayes)
importFrom(variancePartition,topTable)
importFrom(zip,zip)
7 changes: 7 additions & 0 deletions NEWS
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
PackageName 0.1.0
=================
- Initial release of the package.




40 changes: 20 additions & 20 deletions R/SplineOmics-package.R
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
#' Package Name: SplineOmics
#'
#' @description
#' The R package SplineOmics finds the significant features (hits) of
#' The R package SplineOmics finds the significant features (hits) of
#' time-series -omics data by using splines and limma for hypothesis testing.
#' It then clusters the hits based on the spline shape while showing all
#' It then clusters the hits based on the spline shape while showing all
#' results in summary HTML reports.
#'
#' For detailed documentation, vignettes, and examples, please visit the
#'
#' For detailed documentation, vignettes, and examples, please visit the
#' [SplineOmics GitHub page](https://github.com/csbg/SplineOmics.git).
#'
#' @section Key Functions and Classes:
Expand All @@ -17,30 +17,30 @@
#' an HTML report containg various plots, such as density plots
#' and correlation heatmaps.
#' - screen_limma_hyperparams: Allows the specify lists of different hyperparameters
#' to test, such as a degree of freedom of 2, 3, 4,
#' and adj.p-val thresholds, such as 0.1 and 0.05,
#' to test, such as a degree of freedom of 2, 3, 4,
#' and adj.p-val thresholds, such as 0.1 and 0.05,
#' and tests all specified different values for all
#' limma spline hyperparameters in a semi-combinatorial
#' way.
#' - update_splineomics: Allows to change values of the SplineOmics object, for
#' - update_splineomics: Allows to change values of the SplineOmics object, for
#' example after observing that outliers should be removed
#' from the data (update the data parameter).
#' - run_limma_splines: Central function of the script, is called by the
#' - run_limma_splines: Central function of the script, is called by the
#' screen_limma_hyperparams function and can be called to
#' get the limma spline analysis results (p-values for all
#' get the limma spline analysis results (p-values for all
#' features (e.g. proteins)) with the hyperparameters, that
#' were selected finally.
#' - create_limma_report: Creates an HTML report showing the run_limma_splines
#' - create_limma_report: Creates an HTML report showing the run_limma_splines
#' results
#' - cluster_hits: Clusters the splines of the hits (significant features) based
#' on their shape and shows all results as plots in an HTML
#' report.
#' - download_enrichr_databases: Allows to download the Enrichr databases for
#' - download_enrichr_databases: Allows to download the Enrichr databases for
#' runnin clusterProfiler in the run_gsea function
#' with them.
#' - run_gsea: Runs clusterProfiler with the clustered hits by using the Enrichr
#' databases.
#'
#'
#' @section Package Options:
#' None
#'
Expand All @@ -67,23 +67,23 @@
#' Optional dependencies
#'
#' These dependencies are only necessary for some functions:
#'
#'
#' - **edgeR**: For preprocessing RNA-seq data in the run_limma_splines() fun.
#' - **clusterProfiler**: For the run_gsea() function (gene set enrichment).
#' - **rstudioapi**: For the open_tutorial() and open_template() functions.
#'
#' @section Authors:
#' - [Thomas-Rauter](https://github.com/Thomas-Rauter) - Wrote the package and
#' developed the approach with VSchaepertoens under guidance from nfortelny
#' - [Thomas-Rauter](https://github.com/Thomas-Rauter) - Wrote the package and
#' developed the approach with VSchaepertoens under guidance from nfortelny
#' and skafdasschaf.
#' - [nfortelny](https://github.com/nfortelny) - Principal Investigator,
#' - [nfortelny](https://github.com/nfortelny) - Principal Investigator,
#' provided guidance and support.
#' - [skafdasschaf](https://github.com/skafdasschaf) - Helped review code and
#' - [skafdasschaf](https://github.com/skafdasschaf) - Helped review code and
#' provided improvement suggestions.
#' - [VSchaepertoens](https://github.com/VSchaepertoens) - Developed an internal
#' plotting function and contributed to exploratory data analysis and the
#' - [VSchaepertoens](https://github.com/VSchaepertoens) - Developed an internal
#' plotting function and contributed to exploratory data analysis and the
#' overall approach.
#'
#'
#' @section Maintainer:
#' - Name: Thomas Rauter
#' - Email: [email protected]
Expand Down
Loading

0 comments on commit 9f9415e

Please sign in to comment.