Skip to content
Please note that GitHub no longer supports your web browser.

We recommend upgrading to the latest Google Chrome or Firefox.

Learn more
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[REVIEW]: MatSurv: Survival analysis and visualization in MATLAB #1830

Open
whedon opened this issue Oct 23, 2019 · 20 comments
Assignees
Labels

Comments

@whedon
Copy link
Collaborator

@whedon whedon commented Oct 23, 2019

Submitting author: @jhcreed (Jordan Creed)
Repository: https://github.com/aebergl/MatSurv
Version: v1.0.0
Editor: @cMadan
Reviewer: @dsurujon, @ManuelaS
Archive: Pending

Status

status

Status badge code:

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

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

@dsurujon & @ManuelaS, please carry out your review in this issue by updating the checklist below. If you cannot edit the checklist please:

  1. Make sure you're logged in to your GitHub account
  2. Be sure to accept the invite at this URL: https://github.com/openjournals/joss-reviews/invitations

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

Please try and complete your review in the next two weeks

Review checklist for @dsurujon

Conflict of interest

  • I confirm that I have read the JOSS conflict of interest (COI) policy and that: I have no COIs with reviewing this work or that any perceived COIs have been waived by JOSS for the purpose of this review.

Code of Conduct

General checks

  • Repository: Is the source code for this software available at the repository url?
  • License: Does the repository contain a plain-text LICENSE file with the contents of an OSI approved software license?
  • Contribution and authorship: Has the submitting author (@jhcreed) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?

Functionality

  • Installation: Does installation proceed as outlined in the documentation?
  • Functionality: Have the functional claims of the software been confirmed?
  • Performance: If there are any performance claims of the software, have they been confirmed? (If there are no claims, please check off this item.)

Documentation

  • A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • Installation instructions: Is there a clearly-stated list of dependencies? Ideally these should be handled with an automated package management solution.
  • Example usage: Do the authors include examples of how to use the software (ideally to solve real-world analysis problems).
  • Functionality documentation: Is the core functionality of the software documented to a satisfactory level (e.g., API method documentation)?
  • Automated tests: Are there automated tests or manual steps described so that the functionality of the software can be verified?
  • Community guidelines: Are there clear guidelines for third parties wishing to 1) Contribute to the software 2) Report issues or problems with the software 3) Seek support

Software paper

  • Summary: Has a clear description of the high-level functionality and purpose of the software for a diverse, non-specialist audience been provided?
  • A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • State of the field: Do the authors describe how this software compares to other commonly-used packages?
  • Quality of writing: Is the paper well written (i.e., it does not require editing for structure, language, or writing quality)?
  • References: Is the list of references complete, and is everything cited appropriately that should be cited (e.g., papers, datasets, software)? Do references in the text use the proper citation syntax?

Review checklist for @ManuelaS

Conflict of interest

  • I confirm that I have read the JOSS conflict of interest (COI) policy and that: I have no COIs with reviewing this work or that any perceived COIs have been waived by JOSS for the purpose of this review.

Code of Conduct

General checks

  • Repository: Is the source code for this software available at the repository url?
  • License: Does the repository contain a plain-text LICENSE file with the contents of an OSI approved software license?
  • Contribution and authorship: Has the submitting author (@jhcreed) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?

Functionality

  • Installation: Does installation proceed as outlined in the documentation?
  • Functionality: Have the functional claims of the software been confirmed?
  • Performance: If there are any performance claims of the software, have they been confirmed? (If there are no claims, please check off this item.)

Documentation

  • A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • Installation instructions: Is there a clearly-stated list of dependencies? Ideally these should be handled with an automated package management solution.
  • Example usage: Do the authors include examples of how to use the software (ideally to solve real-world analysis problems).
  • Functionality documentation: Is the core functionality of the software documented to a satisfactory level (e.g., API method documentation)?
  • Automated tests: Are there automated tests or manual steps described so that the functionality of the software can be verified?
  • Community guidelines: Are there clear guidelines for third parties wishing to 1) Contribute to the software 2) Report issues or problems with the software 3) Seek support

Software paper

  • Summary: Has a clear description of the high-level functionality and purpose of the software for a diverse, non-specialist audience been provided?
  • A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • State of the field: Do the authors describe how this software compares to other commonly-used packages?
  • Quality of writing: Is the paper well written (i.e., it does not require editing for structure, language, or writing quality)?
  • References: Is the list of references complete, and is everything cited appropriately that should be cited (e.g., papers, datasets, software)? Do references in the text use the proper citation syntax?
@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Oct 23, 2019

Hello human, I'm @whedon, a robot that can help you with some common editorial tasks. @dsurujon, @ManuelaS it looks like you're currently assigned to review this paper 🎉.

⭐️ Important ⭐️

If you haven't already, you should seriously consider unsubscribing from GitHub notifications for this (https://github.com/openjournals/joss-reviews) repository. As a reviewer, you're probably currently watching this repository which means for GitHub's default behaviour you will receive notifications (emails) for all reviews 😿

To fix this do the following two things:

  1. Set yourself as 'Not watching' https://github.com/openjournals/joss-reviews:

watching

  1. You may also like to change your default settings for this watching repositories in your GitHub profile here: https://github.com/settings/notifications

notifications

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

@whedon commands

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

@whedon generate pdf
@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Oct 23, 2019

Attempting PDF compilation. Reticulating splines etc...
@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Oct 23, 2019

PDF failed to compile for issue #1830 with the following error:

/app/vendor/bundle/ruby/2.4.0/bundler/gems/whedon-1e4ee47b240d/lib/whedon.rb:135:in check_fields': Paper YAML header is missing expected fields: date (RuntimeError) from /app/vendor/bundle/ruby/2.4.0/bundler/gems/whedon-1e4ee47b240d/lib/whedon.rb:87:in initialize'
from /app/vendor/bundle/ruby/2.4.0/bundler/gems/whedon-1e4ee47b240d/lib/whedon/processor.rb:36:in new' from /app/vendor/bundle/ruby/2.4.0/bundler/gems/whedon-1e4ee47b240d/lib/whedon/processor.rb:36:in set_paper'
from /app/vendor/bundle/ruby/2.4.0/bundler/gems/whedon-1e4ee47b240d/bin/whedon:55:in prepare' from /app/vendor/bundle/ruby/2.4.0/gems/thor-0.20.3/lib/thor/command.rb:27:in run'
from /app/vendor/bundle/ruby/2.4.0/gems/thor-0.20.3/lib/thor/invocation.rb:126:in invoke_command' from /app/vendor/bundle/ruby/2.4.0/gems/thor-0.20.3/lib/thor.rb:387:in dispatch'
from /app/vendor/bundle/ruby/2.4.0/gems/thor-0.20.3/lib/thor/base.rb:466:in start' from /app/vendor/bundle/ruby/2.4.0/bundler/gems/whedon-1e4ee47b240d/bin/whedon:116:in <top (required)>'
from /app/vendor/bundle/ruby/2.4.0/bin/whedon:23:in load' from /app/vendor/bundle/ruby/2.4.0/bin/whedon:23:in

'

@cMadan

This comment has been minimized.

Copy link
Member

@cMadan cMadan commented Oct 23, 2019

@jhcreed

This comment has been minimized.

Copy link

@jhcreed jhcreed commented Oct 23, 2019

Sorry! I have added the date and double checked that it should compile.

@cMadan

This comment has been minimized.

Copy link
Member

@cMadan cMadan commented Oct 28, 2019

@whedon generate pdf

@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Oct 28, 2019

Attempting PDF compilation. Reticulating splines etc...
@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Oct 28, 2019

@cMadan

This comment has been minimized.

Copy link
Member

@cMadan cMadan commented Oct 28, 2019

@jhcreed, skimming your paper I found quite a few typos ("long", "calues", and a few others). Can you and your co-authors take a closer look at the text?

@jhcreed

This comment has been minimized.

Copy link

@jhcreed jhcreed commented Oct 28, 2019

We have looked back over it and fixed the typos. Thanks!

@cMadan

This comment has been minimized.

Copy link
Member

@cMadan cMadan commented Oct 29, 2019

@whedon generate pdf

@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Oct 29, 2019

Attempting PDF compilation. Reticulating splines etc...
@cMadan

This comment has been minimized.

Copy link
Member

@cMadan cMadan commented Oct 29, 2019

@whedon generate pdf

@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Oct 29, 2019

Attempting PDF compilation. Reticulating splines etc...
@whedon

This comment has been minimized.

Copy link
Collaborator Author

@whedon whedon commented Oct 29, 2019

@dsurujon

This comment has been minimized.

Copy link
Collaborator

@dsurujon dsurujon commented Nov 5, 2019

Thank you for this opportunity to review MatSurv. I have gone through the manuscript, documentation and example usage cases. I believe this is a very useful piece of code, and works well, with plenty of options for customization of the output figures. The authors have supplied a number of reproducible examples that are very helpful as well. However, I believe the authors can better highlight the utility of MatSurv by addressing the points I raise below. Once these are addressed, I will be happy to recommend the manuscript for publication.

General checks

Authorship
I see another user @pjl54 has made a commit, but doesn't appear as an author. Depending on the extent of their contribution, I suggest including them as an author or at least mentioning them in the acknowledgements if it was a minor contribution.

Documentation

Statement of need
Please include a description of what contexts survival analysis would be useful in, and what the target audience is.

Community guidelines
Please include this section in the documentation

Software paper

Statement of need
In the summary section, I believe the authors can be more specific with some examples of when survival analysis would be applied, and what kinds of conclusions can be drawn from the output of MatSurv and similar software. I believe the Summary section could include more information on when and how survival analysis is used, since this might not be clear for a general audience.

Quality of writing

  • I found the writing difficult to follow. The first half of the Summary section and the first paragraph of the Use section are mostly definitions, which could benefit a lot from being put into context, with descriptions of why these statistics are used, and how they give us meaningful information.
  • It is not clear which statistics MatSurv outputs in the text. It appears that the "stats" output includes hazard ratios and 95% CIs calculated both with the log-rank and the Mantel-Haenszel approach. However, the section under "Use" implies only the log-rank results are returned.
  • The authors make a point about how the log-rank test "will give slightly different results when compared to the Mantel-Haneszel or Cox regression approach, which is commonly used in R.", but then show agreement between their output and the R output in Table 1. This is confusing, but can be clarified by explaining what exactly is being reported in Table 1.
  • The chi square statistic in Table 1 is not defined, and as it stands, it is not clear how this is relevant to the log-rank test

References

  • For the mentioned survival analysis approaches (log rank test, hazard ration and Kaplan-Meier curves), it would be helpful to have references.
  • The data sources (e.g. Freireich et al., 1963) should also be referenced.

Other comments

  • I highly recommend the authors explain some key concepts such as what an "event" and a "censored event" is. The risk table included in the output should also be introduced both in the paper and in the documentation.
  • In the risk table, it is not immediately clear that the columns correspond to the same time points as in the KM curve figure. I suggest adding another row (representing Time, as in ggsurvplot) as default.
  • In the documentation, I suggest describing the datasets used in more detail, as it would add to why this software is important/useful
  • While the input options are defined in the documentation, there is little information on the output (especially the stats output variable). I suggest describing each individual output statistic similar to what's included as comments in the MatSurv.m script
  • Table 1 does not have a legened, and it appears that in the "Data" column, the last row has a typo (LMAL instead of LAML)

Minor comments

@cMadan

This comment has been minimized.

Copy link
Member

@cMadan cMadan commented Nov 6, 2019

@dsurujon, thank you for the thorough review!

@cMadan

This comment has been minimized.

Copy link
Member

@cMadan cMadan commented Nov 18, 2019

@ManuelaS, it would be great if you could begin your review soon, thanks!

@ManuelaS

This comment has been minimized.

Copy link
Collaborator

@ManuelaS ManuelaS commented Nov 19, 2019

Thanks for the reminder @cMadan, I'll work through the review during the weekend!

@openjournals openjournals deleted a comment from whedon Nov 19, 2019
@danielskatz

This comment has been minimized.

Copy link

@danielskatz danielskatz commented Dec 5, 2019

👋 @ManuelaS - how is your review going?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
6 participants
You can’t perform that action at this time.