RforMassSpectrometry
is a meta-package, to manage and
document the R for Mass Spectrometry (https://www.rformassspectrometry.org/) project. The goal
of the project to provide efficient, thoroughly documented, tested and
flexible R software for the analysis and interpretation of high
throughput mass spectrometry assays, including proteomics and
metabolomics experiments. The project formalises the longtime
collaborative development efforts of its members under the R for
Mass Spectrometry organisation to facilitate dissemination and
accessibility of their work.
To install the core R for Mass Spectrometry packages, you will need
the BiocManager
package, available on CRAN. If not already
available, install it with
To proceed with the installation, run
Note that some very recent Bioconductor will be needed to install and run the suite of R for Mass Spectrometry packages, and will require a recent version of R and possibly even installing the Bioconductor development version.
Loading the RforMassSpectrometry
package with
## Warning: replacing previous import 'MsCoreUtils::entropy' by 'Spectra::entropy'
## when loading 'RforMassSpectrometry'
## Warning: replacing previous import 'MsCoreUtils::smooth' by 'Spectra::smooth'
## when loading 'RforMassSpectrometry'
## Warning: replacing previous import 'MsCoreUtils::bin' by 'Spectra::bin' when
## loading 'RforMassSpectrometry'
##
## Visit https://RforMassSpectrometry.org for detail about the project.
will load the required core packages.
As contributors and maintainers of the R for Mass Spectrometry initiative, we pledge to respect all people who contribute through reporting issues, posting feature requests, updating documentation, submitting pull requests or patches, and other activities. We are committed to making participation in this project a harassment-free experience for everyone, regardless of level of experience, gender, gender identity and expression, sexual orientation, disability, personal appearance, body size, race, ethnicity, age, or religion. Examples of unacceptable behaviour by participants include the use of sexual language or imagery, derogatory comments or personal attacks, trolling, public or private harassment, insults, or other unprofessional conduct. Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct. Project maintainers who do not follow the Code of Conduct may be removed from the project team. Instances of abusive, harassing, or otherwise unacceptable behaviour may be reported by opening an issue or contacting one or more of the project maintainers.
This Code of Conduct is adapted from the Contributor Covenant, version 1.0.0, available from http://contributor-covenant.org/version/1/0/0/
The R for Mass Spectrometry project welcomes contributions in the form of ideas, documentation, code, packages, fixes (bugs and typos), … We invite you to discuss any of these opening a GitHub issue in the relevant package github repository.
If you have any direct contributions to an existing repository, we suggest to first discuss these as an issue if it implies any substantial changes (no need for an issue if its a simple typo, and we really appreciate those).
Contributions, even those from core members, are always expected to
come in the form of a pull request (PR) that then undergoes a formal
review. To do this, start by forking the package you want to contribute.
It is also advised to work in, and make the PR, from a non-master
branch. Good branch names include issueX
when it relates to
a specific issue, feat-X
, bug-Y
,
docs-Z
for new features, bug fixes and documentation
updates respectively. The reviewers might ask for additional
clarifications and/or changes prior to merging the PR. When
contemplating contributing code, please follow the style guide
below.
In particular, when several developers collaborate on a feature, an
admin should create a dedicated branch
RforMassSpectrometry/Package:branch
. Developers should then
fetch that branch in their local copy of the Package
repository and send PRs to that branch too, where it will be reviewed,
and eventually merged into
RforMassSpectrometry/Package:master
.
See also the tidyverse and Mycrof contribution guides for additional resources and instructions.
Reviewers will do their best to help you to get the PR merged1.
We also anticipate to open up some specific requests for contributions and invite specific members of the community, if we identify a specific need and/or a specific developer to address that need.
Commit messages should follow the Conventional Commits guidelines. In particular, the following types are recommended (based on angulars types):
build:
Changes that affect the build system or external
dependencies (example scopes: depends, suggests, imports, …).ci:
Changes to the continous integration (CI)
configuration files and scripts (example: Travis configuration
file).docs:
Documentation only changes, including manual
pages and vignettes.feat:
A new feature.fix:
A bug fix.perf:
A code change that improves performance.refactor:
A code change that neither fixes a bug nor
adds a feature.style:
Changes that do not affect the meaning of the
code (white-space, formatting, …).test:
Adding missing tests or correcting existing
tests.other:
Anything that doesn’t fit in the above. Consider
opening an issue suggestion a new type.We also want to offer proper credit to those that provide substantial contributions. Substantial contributions include, for example
Fixing typo(s) isn’t considered a substantial contribution per-se, even though they are highly appreciated.
Once a substantial contribution passes review and is merged, we will
add the contributor in the package’s author list as an official
contributor (ctb
role) or even author (aut
role) for more substantial contributions. The contributors name will
also be added to the R for Mass Spectrometry web page and to
any relevant publications that directly stem from their work.
The R for Mass Spectrometry packages follows the Bioconductor style guide. In particular
.
when naming symbols..
can be used for hidden/local functions or
variables.##
to start full-line comments.#'
is preferred, although
##'
is tolerated.=
in function arguments or class
definition: f(a = 1, b = 2)
.a, b, c
.a + b
.# no wrap at 80
someVeryLongVariableName <- someVeryLongFunctionName(withSomeEvenLongerFunctionArgumentA = 1, withSomeEvenLongerFunctionArgumentB = 2)
and should be wrapped as shown below:
# alternative 1
someVeryLongVariableName <-
someVeryLongFunctionName(withSomeEvenLongerFunctionArgumentA = 1,
withSomeEvenLongerFunctionArgumentB = 2)
# alternative 2
someVeryLongVariableName <- someVeryLongFunctionName(
withSomeEvenLongerFunctionArgumentA = 1,
withSomeEvenLongerFunctionArgumentB = 2)
Please see the contact page for instructions on how to get in touch.
## R version 4.4.2 (2024-10-31)
## Platform: x86_64-pc-linux-gnu
## Running under: Ubuntu 24.04.1 LTS
##
## Matrix products: default
## BLAS: /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3
## LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/libopenblasp-r0.3.26.so; LAPACK version 3.12.0
##
## locale:
## [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
## [3] LC_TIME=en_US.UTF-8 LC_COLLATE=C
## [5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
## [7] LC_PAPER=en_US.UTF-8 LC_NAME=C
## [9] LC_ADDRESS=C LC_TELEPHONE=C
## [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
##
## time zone: Etc/UTC
## tzcode source: system (glibc)
##
## attached base packages:
## [1] stats graphics grDevices utils datasets methods base
##
## other attached packages:
## [1] RforMassSpectrometry_0.1.5 BiocStyle_2.35.0
##
## loaded via a namespace (and not attached):
## [1] SummarizedExperiment_1.37.0 MsExperiment_1.9.0
## [3] xfun_0.49 bslib_0.8.0
## [5] QFeatures_1.17.0 PSMatch_1.11.0
## [7] Biobase_2.67.0 lattice_0.22-6
## [9] vctrs_0.6.5 tools_4.4.2
## [11] generics_0.1.3 stats4_4.4.2
## [13] parallel_4.4.2 tibble_3.2.1
## [15] fansi_1.0.6 cluster_2.1.6
## [17] pkgconfig_2.0.3 Matrix_1.7-1
## [19] S4Vectors_0.45.2 lifecycle_1.0.4
## [21] GenomeInfoDbData_1.2.13 stringr_1.5.1
## [23] compiler_4.4.2 codetools_0.2-20
## [25] clue_0.3-66 GenomeInfoDb_1.43.1
## [27] htmltools_0.5.8.1 sys_3.4.3
## [29] buildtools_1.0.0 sass_0.4.9
## [31] yaml_2.3.10 lazyeval_0.2.2
## [33] pillar_1.9.0 tidyr_1.3.1
## [35] crayon_1.5.3 jquerylib_0.1.4
## [37] MASS_7.3-61 BiocParallel_1.41.0
## [39] cachem_1.1.0 DelayedArray_0.33.2
## [41] MetaboCoreUtils_1.15.0 abind_1.4-8
## [43] tidyselect_1.2.1 digest_0.6.37
## [45] stringi_1.8.4 purrr_1.0.2
## [47] dplyr_1.1.4 reshape2_1.4.4
## [49] maketools_1.3.1 fastmap_1.2.0
## [51] grid_4.4.2 cli_3.6.3
## [53] SparseArray_1.7.2 magrittr_2.0.3
## [55] S4Arrays_1.7.1 utf8_1.2.4
## [57] UCSC.utils_1.3.0 rmarkdown_2.29
## [59] XVector_0.47.0 httr_1.4.7
## [61] matrixStats_1.4.1 igraph_2.1.1
## [63] evaluate_1.0.1 knitr_1.49
## [65] GenomicRanges_1.59.1 IRanges_2.41.1
## [67] MultiAssayExperiment_1.33.0 rlang_1.1.4
## [69] Rcpp_1.0.13-1 glue_1.8.0
## [71] DBI_1.2.3 BiocManager_1.30.25
## [73] BiocGenerics_0.53.3 Spectra_1.17.0
## [75] jsonlite_1.8.9 plyr_1.8.9
## [77] AnnotationFilter_1.31.0 R6_2.5.1
## [79] MatrixGenerics_1.19.0 fs_1.6.5
## [81] zlibbioc_1.52.0 ProtGenerics_1.39.0
## [83] MsCoreUtils_1.19.0
Useful reading: The nodejs reviewing PRs for reviewers guide↩︎