openjournals / joss-reviews

Reviews for the Journal of Open Source Software
Creative Commons Zero v1.0 Universal
703 stars 36 forks source link

[REVIEW]: pivmet: an R package proposing pivotal methods for consensus clustering and mixture modelling #6461

Closed editorialbot closed 2 months ago

editorialbot commented 6 months ago

Submitting author: !--author-handle-->@LeoEgidi<!--end-author-handle-- (LEONARDO EGIDI) Repository: https://github.com/LeoEgidi/pivmet Branch with paper.md (empty if default branch): master Version: v0.6.0 Editor: !--editor-->@skanwal<!--end-editor-- Reviewers: @adriancorrendo, @larryshamalama Archive: 10.5281/zenodo.11243277

Status

status

Status badge code:

HTML: <a href="https://joss.theoj.org/papers/27410f99af44fd07417b87b8ec193ef5"><img src="https://joss.theoj.org/papers/27410f99af44fd07417b87b8ec193ef5/status.svg"></a>
Markdown: [![status](https://joss.theoj.org/papers/27410f99af44fd07417b87b8ec193ef5/status.svg)](https://joss.theoj.org/papers/27410f99af44fd07417b87b8ec193ef5)

Reviewers and authors:

Please avoid lengthy details of difficulties in the review thread. Instead, please create a new issue in the target repository and link to those issues (especially acceptance-blockers) by leaving comments in the review thread below. (For completists: if the target issue tracker is also on GitHub, linking the review thread in the issue or vice versa will create corresponding breadcrumb trails in the link target.)

Reviewer instructions & questions

@adriancorrendo & @larryshamalama, your review will be checklist based. Each of you will have a separate checklist that you should update when carrying out your review. First of all you need to run this command in a separate comment to create the checklist:

@editorialbot generate my checklist

The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @skanwal know.

✨ Please start on your review when you are able, and be sure to complete your review in the next six weeks, at the very latest ✨

Checklists

πŸ“ Checklist for @adriancorrendo

πŸ“ Checklist for @larryshamalama

editorialbot commented 6 months ago

Hello humans, I'm @editorialbot, a robot that can help you with some common editorial tasks.

For a list of things I can do to help you, just type:

@editorialbot commands

For example, to regenerate the paper pdf after making changes in the paper's md or bib files, type:

@editorialbot generate pdf
editorialbot commented 6 months ago

Software report:

github.com/AlDanial/cloc v 1.90  T=0.02 s (1098.3 files/s, 258564.0 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
R                               14            441            941           2031
HTML                             2             70              5            983
TeX                              2             76              0            518
Markdown                         4            108              0            305
Rmd                              3            187            245            206
YAML                             1              1              1              3
-------------------------------------------------------------------------------
SUM:                            26            883           1192           4046
-------------------------------------------------------------------------------

Commit count by author:

   503  Leonardo Egidi
   168  LeoEgidi
     6  Leonardo
editorialbot commented 6 months ago

Paper file info:

πŸ“„ Wordcount for paper.md is 1196

βœ… The paper includes a Statement of need section

editorialbot commented 6 months ago

License info:

πŸ”΄ Failed to discover a valid open source license

editorialbot commented 6 months ago
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- None

MISSING DOIs

- No DOI given, and none found for title: A conceptual introduction to Hamiltonian Monte Car...
- No DOI given, and none found for title: K-means seeding via MUS algorithm
- 10.1007/978-3-319-73906-9_7 may be a valid DOI for title: Maxima Units Search (MUS) algorithm: methodology a...
- 10.1007/s11222-017-9774-2 may be a valid DOI for title: Relabelling in Bayesian mixture models by pivotal ...
- No DOI given, and none found for title: Cluster ensembles - A knowledge reuse framework fo...
- 10.1109/tpami.2005.113 may be a valid DOI for title: Combining multiple clusterings using evidence accu...
- No DOI given, and none found for title: k-means++: The advantages of careful seeding
- No DOI given, and none found for title: Bayesian solutions to the label switching problem
- 10.1214/09-ba414 may be a valid DOI for title: Improved criteria for clustering based on the post...
- 10.1111/1467-9868.00265 may be a valid DOI for title: Dealing with label switching in mixture models
- 10.1080/03610926.2010.526741 may be a valid DOI for title: Bayesian mixture labeling and clustering
- 10.1214/088342305000000016 may be a valid DOI for title: Markov chain Monte Carlo methods and the label swi...
- 10.1198/jasa.2009.0237 may be a valid DOI for title: Bayesian mixture labeling by highest posterior den...
- 10.1198/016214501750333063 may be a valid DOI for title: Markov chain Monte Carlo estimation of classical a...
- 10.1198/0003130043286 may be a valid DOI for title: Difficulties in drawing inferences with finite-mix...
- 10.1080/00949655.2012.707201 may be a valid DOI for title: An online Bayesian mixture labelling method by min...
- 10.1198/jcgs.2010.09008 may be a valid DOI for title: An artificial allocations based solution to the la...
- No DOI given, and none found for title: label.switching: An R package for dealing with the...
- No DOI given, and none found for title: label.switching: Relabelling MCMC Outputs of Mixtu...
- No DOI given, and none found for title: bayesmix: Bayesian Mixture Models with JAGS
- 10.2307/2531224 may be a valid DOI for title: Statistical analysis of finite mixture distributio...
- No DOI given, and none found for title: Finite Mixture Models
- No DOI given, and none found for title: Comparing partitions
- 10.1080/10618600.2012.735624 may be a valid DOI for title: Label switching in Bayesian mixture models: Determ...
- 10.1007/978-0-387-38983-7 may be a valid DOI for title: Bayesian core: a practical approach to computation...
- 10.1016/s0169-7161(05)25016-2 may be a valid DOI for title: Bayesian modelling and inference on mixtures of di...
- 10.2307/2669477 may be a valid DOI for title: Computational and inferential difficulties with mi...
- 10.1007/s11222-009-9129-8 may be a valid DOI for title: Probabilistic relabelling strategies for the label...
- No DOI given, and none found for title: Bayesian inference for mixture models via Monte Ca...
- 10.1007/bf00143556 may be a valid DOI for title: Sampling from multimodal distributions using tempe...
- No DOI given, and none found for title: On Bayesian analysis of mixtures with an unknown n...
- 10.2307/2289993 may be a valid DOI for title: Density estimation with confidence sets exemplifie...
- No DOI given, and none found for title: foreign: Read Data Stored by β€˜Minitab’, β€˜S’, β€˜SAS’...
- No DOI given, and none found for title: MASS: Support Functions and Datasets for Venables ...
- No DOI given, and none found for title: mclust: Gaussian Mixture Modelling for Model-Based...
- No DOI given, and none found for title: pivmet: Pivotal Methods for Bayesian Relabelling a...
- No DOI given, and none found for title: RStan: the R interface to Stan
- No DOI given, and none found for title: rjags: Bayesian graphical models using MCMC
- No DOI given, and none found for title: runjags: An R package providing interface utilitie...
- 10.1214/08-aoas191 may be a valid DOI for title: A weakly informative default prior distribution fo...
- No DOI given, and none found for title: Prior distributions for variance parameters in hie...
- 10.1214/009053604000001147 may be a valid DOI for title: Spike and slab variable selection: frequentist and...
- 10.2307/1390653 may be a valid DOI for title: Markov chain sampling methods for Dirichlet proces...
- No DOI given, and none found for title: Bayesian density estimation by mixtures of normal ...
- 10.2307/2291069 may be a valid DOI for title: Bayesian density estimation and inference using mi...
- No DOI given, and none found for title: dirichletprocess: An R Package for Fitting Complex...
- No DOI given, and none found for title: A Bayesian analysis of some nonparametric problems
- 10.1007/s11634-018-0329-y may be a valid DOI for title: From here to infinity: sparse finite versus Dirich...
- 10.1007/s11222-014-9500-2 may be a valid DOI for title: Model-based clustering based on sparse finite Gaus...
- 10.1111/anzs.12350 may be a valid DOI for title: Spying on the prior of the number of data clusters...
- No DOI given, and none found for title: Model-based clustering, discriminant analysis, and...

INVALID DOIs

- None
editorialbot commented 6 months ago

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

adriancorrendo commented 6 months ago

Review checklist for @adriancorrendo

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

arfon commented 5 months ago

@LeoEgidi – this may have been discussed already but what license is this software released under? JOSS requires software published here to have a file named LICENSE at the root of the repository with the whole text of an OSI-approved license.

LeoEgidi commented 5 months ago

@LeoEgidi – this may have been discussed already but what license is this software released under? JOSS requires software published here to have a file named LICENSE at the root of the repository with the whole text of an OSI-approved license.

Hi @arfon , the License, as documented by the description file, is GPL-2

LeoEgidi commented 5 months ago

I investigate a bit more

LeoEgidi commented 5 months ago

Ok, now I put a LICENSE file at the repository root as suggested

@LeoEgidi – this may have been discussed already but what license is this software released under? JOSS requires software published here to have a file named LICENSE at the root of the repository with the whole text of an OSI-approved license.

Hi @arfon , the License, as documented by the description file, is GPL-2

adriancorrendo commented 5 months ago

Hi @LeoEgidi . How are you? Thanks for developing the pivmet package and submitting it for review here.

I've just created an issue on your repo with my review comments at https://github.com/LeoEgidi/pivmet/issues/1#issue-2226985183

Could you please take a look?

Thanks, Adrian

LeoEgidi commented 5 months ago

Hi @adriancorrendo , thanks a lot for your comments, I took a first look. I'll try to get a deeper look this week, or at most next week. Should I reply your points here or directly in the repo? What do you prefer? Thanks a lot

adriancorrendo commented 4 months ago

Hi @adriancorrendo , thanks a lot for your comments, I took a first look. I'll try to get a deeper look this week, or at most next week. Should I reply your points here or directly in the repo? What do you prefer? Thanks a lot

Hi Leo, how are you? You would need to answer on the issue I created in the package repo. Once you address those comments, I'll start checking the remaining boxes until giving my full ok. That's what I did when I published my paper here.

Hope it helps! Adrian

larryshamalama commented 4 months ago

Review checklist for @larryshamalama

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

larryshamalama commented 4 months ago

Hi @LeoEgidi, thanks for the submission. Overall, looks good, but I do have some doubts with the paper. Some comments below align with @adriancorrendo's review.

Major comments/questions

Minor comments

LeoEgidi commented 4 months ago

Hi @adriancorrendo , thanks a lot for your comments, I took a first look. I'll try to get a deeper look this week, or at most next week. Should I reply your points here or directly in the repo? What do you prefer? Thanks a lot

Hi Leo, how are you? You would need to answer on the issue I created in the package repo. Once you address those comments, I'll start checking the remaining boxes until giving my full ok. That's what I did when I published my paper here.

Hope it helps! Adrian

@arfon @adriancorrendo

I replied the comments from Adrian in the issue he created. Now time to work on the @larryshamalama comments

LeoEgidi commented 4 months ago

Hi @LeoEgidi, thanks for the submission. Overall, looks good, but I do have some doubts with the paper. Some comments below align with @adriancorrendo's review.

Major comments/questions

  • A statement of need and State of the field: You define pivotal units in the first paragraph without diving into the details of the math; this is nice. Was this concept introduced in your 2018 paper or was it previously introduced? The main comment here is that I cannot find any "literature (software) review" of any packages that have any capabilities in finding pivotal units. If the concept was introduced in your 2018 paper, it makes sense that there is no software that specifically provides functionality for identifying pivotal units. It would be nice to either 1) if no other software can be used, identify what mixture modelling packages could potentially be helpful in identifying pivotal units or 2) summarize what this package contributes on top of other pivotal unit software.

Thanks. In line with the comments from @adriancorrendo , we added a new paragraph at the end the "Statement of need" section to make an overview of other R packages related to pivmet. For this reason, we summarized why pivmet is so beneficial in the search of the pivotal units and how this package is naturally related to other existing packages, such as 'rstan', 'rjags' and 'bayesmix'.

Minor comments

  • I think that it would be good to include a quickstart akin to what is available in the README in the software paper itself.

Ok, If I well understood your point, in line with one of the comments from @adriancorrendo , we included now in the two examples in the paper, #Example 1 and #Example 2, some relevant lines of R code, basically the same included in the README file.

  • Community guidelines seem to be missing. For instance, you can add a CONTRIBUTING.md file outlining how to ask questions (via GitHub issues or discussions) and how to contribute to the package via pull requests.

Thanks, done. We added a new .md file "CODE OF CONDUCT" in the main repo to properly suggest the users how to contribute and report bugs.

  • I found some typos in the article. I tried solving the ones I found in my PR. I may have missed some, please have a look again.

Thanks, I read another time, and so far no other typos have been found. I merged the pull request.

LeoEgidi commented 4 months ago

@arfon @larryshamalama @adriancorrendo

Thanks a lot;) I replied all your comments, for any doubt/clarification I am available

crvernon commented 3 months ago

:wave: - @skanwal will you check in on this submission? It looks like the author and reviewers are making good progress. Thanks!

skanwal commented 3 months ago

Thanks so much @adriancorrendo and @larryshamalama. The checklists look fairly complete to me. Are you happy for this submission to be accpeted? I wanted to confirm there are no outstanding tasks?

Also, thanks @LeoEgidi for staying on top of comments and updates.

larryshamalama commented 3 months ago

Thanks so much @adriancorrendo and @larryshamalama. The checklists look fairly complete to me. Are you happy for this submission to be accpeted? I wanted to confirm there are no outstanding tasks?

Also, thanks @LeoEgidi for staying on top of comments and updates.

Yes looks good to me!

adriancorrendo commented 3 months ago

I just asked authors to add a R-CMD badge in the README that helps users to see upfront if the package is passing automated tests, ideally also a coverage test like codecov. However, this could be more a "suggestion" than a required revision for acceptance. So, I'm happy with the answers and revisions from the authors.

LeoEgidi commented 3 months ago

Thanks a lot!!

I also added the R-CMD suggestion from @adriancorrendo in the readme

skanwal commented 3 months ago

Thanks @LeoEgidi. Your submission is ready to be accepted. Can you please create a new tagged release of the software (if changed), and archive it (on Zenodo, figshare, or other). Once you're done can you please also post the version number and archive DOI in this REVIEW issue.

skanwal commented 3 months ago

Post-Review Checklist for Editor and Authors

Additional Author Tasks After Review is Complete

Editor Tasks Prior to Acceptance

LeoEgidi commented 3 months ago

@editorialbot generate pdf

editorialbot commented 3 months ago

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

LeoEgidi commented 3 months ago

@editorialbot generate pdf

editorialbot commented 3 months ago

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

LeoEgidi commented 3 months ago

@editorialbot generate pdf

editorialbot commented 3 months ago

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

skanwal commented 3 months ago

Hello @LeoEgidi - how are you going with final proof reading and creating the DOI?

LeoEgidi commented 3 months ago

Hello @LeoEgidi - how are you going with final proof reading and creating the DOI?

Hi @skanwal , thanks a lot. Just give us a bunch of days to finalize proofs and DOI, we are working on it!

LeoEgidi commented 3 months ago

@editorialbot generate pdf

editorialbot commented 3 months ago

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

LeoEgidi commented 3 months ago

Post-Review Checklist for Editor and Authors

Additional Author Tasks After Review is Complete

  • Double check authors and affiliations (including ORCIDs)
 DONE
  • Make a release of the software with the latest changes from the review and post the version number here. This is the version that will be used in the JOSS paper.
 DONE, the current version for pivmet is 0.6.0 (available on Github and submitted to CRAN)
  • Archive the release on Zenodo/figshare/etc and post the DOI here.
 DONE. DOI is: 10.5281/zenodo.11243277
  • Make sure that the title and author list (including ORCIDs) in the archive match those in the JOSS paper.
 DONE 
  • Make sure that the license listed for the archive is the same as the software license.
 DONE (License is GPL-2)

Here we are @skanwal

LeoEgidi commented 3 months ago

Hello @LeoEgidi - how are you going with final proof reading and creating the DOI?

just posted my final replies here above. Hopefully we are there! Best, and thanks for everything

LeoEgidi commented 3 months ago

@editorialbot generate pdf

editorialbot commented 3 months ago

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

LeoEgidi commented 3 months ago

@editorialbot generate pdf

editorialbot commented 3 months ago

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

LeoEgidi commented 3 months ago

(ok, super last edits to the r reproducible code. done)

skanwal commented 3 months ago

@editorialbot set 10.5281/zenodo.11243277 as archive

editorialbot commented 3 months ago

That doesn't look like a valid DOI value

skanwal commented 3 months ago

@LeoEgidi - did you use similar instructions as this to create DOI?

skanwal commented 3 months ago

@editorialbot set v0.6.0 as version

editorialbot commented 3 months ago

Done! version is now v0.6.0

LeoEgidi commented 3 months ago

@LeoEgidi - did you use similar instructions as this to create DOI?

yes! I copy here the whole DOI url, this works:

https://doi.org/10.5281/zenodo.11243277

skanwal commented 2 months ago

@editorialbot set https://doi.org/10.5281/zenodo.11243277 as archive