Closed whedon closed 4 years ago
Hello human, I'm @whedon, a robot that can help you with some common editorial tasks. @jacobsoj, @chainsawriot it looks like you're currently assigned to review this paper :tada:.
:warning: JOSS reduced service mode :warning:
Due to the challenges of the COVID-19 pandemic, JOSS is currently operating in a "reduced service mode". You can read more about what that means in our blog post.
:star: Important :star:
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:
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
Reference check summary:
OK DOIs
- 10.1177/1073191119845051 is OK
- 10.1007/BF02289209 is OK
- 10.7275/jyj1-4868 is OK
- 10.1177/0095798418771807 is OK
- 10.7287/peerj.preprints.3188v1 is OK
- 10.1016/j.csda.2013.02.005 is OK
- 10.1037/met0000200 is OK
- 10.1037/met0000074 is OK
- 10.1037/a0025697 is OK
- 10.1080/00273171.2011.564527 is OK
- 10.18637/jss.v048.i02 is OK
MISSING DOIs
- None
INVALID DOIs
- None
Thanks @mdsteiner & Co. for this wonderful package.
The paper is well written. But I don't know the policy of JOSS enough about citing "Manuscript in preparation". (Could @fboehm confirm this?) Obviously, the two authors are probably the only persons having that paper now. I can't 'see Grieder & Steiner, 2020', as per the in-text citation.
I have 2 suggestions:
If it can't be put as a preprint (we know how these social science journals work...), maybe just say
the ability to reproduce the R psych (Revelle, 2019) and SPSS (IBM, 2015) implementations of some analyses methods, as well as the inclusion of experimental implementations for these methods based on simulation analyses by the authors (pending publication).
I think the documentation and the vignette are very easy to read. I can understand the package very quickly. All methods are well referenced. The crayon
-based output is a nice touch.
The package is feature-rich and it deals with all aspects of EFA. I especially like the function N_FACTORS
becuse it helps to solve the problem of choosing n_factors
The package tries to match the SPSS's offerings. I only have one suggestion (which might be too much to ask): It would be nice to have the ability to plot screeplot. Biplot might be nice too. Some reviewers would ask for it.
.DS_Store
from your repo. I don't know why your .gitignore
doesn't work. But the following should at least do the trick of finding all .DS_Store
and ignore them.find . -name .DS_Store -print0 | xargs -0 git rm -f --ignore-unmatch
Advice from goodpractice::gp()
. You don't need to consider all of the points. But I think some are useful and less opinionated.
Test coverage is 65% which is okay. But some important lines are not tested. e.g.
cor.smooth
)shared_load[1,1]
< 0)exportPattern
is generated in NAMESPACE from this line Is it really needed? It also makes me wonder, do you need to export all helper functions? (e.g. .numformat
)
Adding URL / Bugreports to the DESCRIPTION
file would be helpful for your users to find your github repo.
Regarding comments from @chainsawriot about the manuscript and the manuscript in preparation, it would be ideal if the authors can post a preprint and cite it, but, if that's not possible, then I like the other suggestion from @chainsawriot, too.
Thank you @chainsawriot for the fast review and the many helpful comments and suggestions! Please find below our responses to your raised points.
The paper is well written. But I don't know the policy of JOSS enough about citing "Manuscript in preparation". (Could @fboehm confirm this?) Obviously, the two authors are probably the only persons having that paper now. I can't 'see Grieder & Steiner, 2020', as per the in-text citation.
I have 2 suggestions:
- Put it as a preprint and then cite it.
- If it can't be put as a preprint (we know how these social science journals work...), maybe just say the ability to reproduce the R psych (Revelle, 2019) and SPSS (IBM, 2015) implementations of some analyses methods, as well as the inclusion of experimental implementations for these methods based on simulation analyses by the authors (pending publication).
Response: As the paper is not yet in a form we are comfortable to share as a preprint, we would, for now, like to opt for the second suggestion made by the reviewer. We changed the respective sentence in the paper accordingly. However, we hope to have a shareable version ready in time to still be able to include a reference to a preprint here.
To demonstrate that our package enables replication of the R psych and SPSS solutions, we added a vignette to the package and refer to it in the paper as well.
I think the documentation and the vignette are very easy to read. I can understand the package very quickly. All methods are well referenced. The crayon-based output is a nice touch.
The package is feature-rich and it deals with all aspects of EFA. I especially like the function N_FACTORS becuse it helps to solve the problem of choosing n_factors
The package tries to match the SPSS's offerings. I only have one suggestion (which might be too much to ask): It would be nice to have the ability to plot screeplot. Biplot might be nice too. Some reviewers would ask for it.
Response:
Thank you for this feedback! We include a scree plot in the KGC
and PARALLEL
functions, but these plots are not shown if KGC
or PARALLEL
are called within the N_FACTORS
function. To facilitate getting a scree plot, we now added a function SCREE
which just creates a scree plot / scree plots of the eigenvalues determined with either "PCA", "SMC" or "EFA", or a combination of them. This function can also be called in N_FACTORS
now, just like the other factor retention criteria.
Furthermore, we also added a function FACTOR_SCORES
which is a wrapper for psych::factor.scores
to be used directly with an output from EFA
.
We also like the idea of adding the option to do a biplot and would like to consider this as a future enhancement of our package.
Please remove .DS_Store from your repo. I don't know why your .gitignore doesn't work. But the following should at least do the trick of finding all .DS_Store and ignore them.
find . -name .DS_Store -print0 | xargs -0 git rm -f --ignore-unmatch
Response: Thank you for this very helpful suggestion, we now removed all .DS_Store.
Advice from goodpractice::gp(). You don't need to consider all of the points. But I think some are useful and less opinionated.
Test coverage is 65% which is okay. But some important lines are not tested. e.g. R/BARTLETT.R:107 (corner cases that require cor.smooth) R/CD.R:236, 295, 303 (corner cases when shared_load[1,1] < 0)
Response: Thank you for making us aware of that. We did not know the goodpractice package and think it is really helpful. We now added new tests for some helper functions that were not tested before, and updated many of the existing tests to cover more different cases. Test coverage is now 74.7%. We do not test print and plot functions (which make up most of the untested lines) as well as some very minor cases and cases which would bear the risk of unstable results (e.g., the occurence of Heywood cases or non-convergence when random data are generated).
exportPattern is generated in NAMESPACE from this line Is it really needed? It also makes me wonder, do you need to export all helper functions? (e.g. .numformat)
Response: Thank you for pointing this out! We now deleted the exportPattern and export all functions explicitly. This way, the helper functions remain hidden.
Adding URL / Bugreports to the DESCRIPTION file would be helpful for your users to find your github repo.
Response: Thank you for this suggestion! We have now added the respective lines in the DESCRIPTION file.
@whedon generate pdf
Thank you so much for the revision, @mdsteiner. Both the paper and the software look fine to me now.
Back to you @fboehm .
Thank you, @chainsawriot ! Just to verify - are you content with the documentation around community guidelines?
Thanks again!
@jacobsoj - please let me know if you have any questions during your review. Thanks again!
@fboehm The documentation around community guidelines looks fine to me. Really sorry that I have forgotten to check the box. The box is now checked. Thank you very much!
@jacobsoj - I just wanted to ask if you have any questions about the review process. Please feel free to check the boxes as you examine the package and manuscript. Thanks again!
Sorry for the delay. I am one of those people juggling work and young kids w/o daycare. I should be able to finish going through the package today and submit my review by tomorrow. Jill
Jill A. Jacobson, Ph.D. Office Phone 613-533-2847 Associate Professor, Social-Personality Program Lab Phone 613-533-6000 x75417 Queen's University FAX 613-533-2499 Department of Psychology Email jill.jacobson@queensu.ca Kingston, ON K7L 3N6 CANADA
http://www.queensu.ca/psychology/People/Faculty/Jill-Jacobson
From: Frederick Boehm notifications@github.com Sent: Monday, August 17, 2020 8:39 AM To: openjournals/joss-reviews joss-reviews@noreply.github.com Cc: Jill Jacobson jill.jacobson@queensu.ca; Mention mention@noreply.github.com Subject: Re: [openjournals/joss-reviews] [REVIEW]: EFAtools: An R package with fast and flexible implementations of exploratory factor analysis tools (#2521)
@jacobsojhttps://can01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fjacobsoj&data=02%7C01%7Cjill.jacobson%40queensu.ca%7C11fa0a57088f440e0b5408d842aaa1b1%7Cd61ecb3b38b142d582c4efb2838b925c%7C1%7C0%7C637332647921969577&sdata=jotMeofjgMfe4nwwDDiHoRj6CAAQhmmBg0y9ayUsok8%3D&reserved=0 - I just wanted to ask if you have any questions about the review process. Please feel free to check the boxes as you examine the package and manuscript. Thanks again!
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://can01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fopenjournals%2Fjoss-reviews%2Fissues%2F2521%23issuecomment-674856806&data=02%7C01%7Cjill.jacobson%40queensu.ca%7C11fa0a57088f440e0b5408d842aaa1b1%7Cd61ecb3b38b142d582c4efb2838b925c%7C1%7C0%7C637332647921969577&sdata=bg0rxbR5JsNu0IooiJFkeztRx6g8Gq3vLNdlArE0YLc%3D&reserved=0, or unsubscribehttps://can01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAFIU35CK3R524HVSICZWLU3SBEQJLANCNFSM4PIC2TWA&data=02%7C01%7Cjill.jacobson%40queensu.ca%7C11fa0a57088f440e0b5408d842aaa1b1%7Cd61ecb3b38b142d582c4efb2838b925c%7C1%7C0%7C637332647921979571&sdata=29ytHUmN5fr3MZlZORmhL%2FA9Z1X70vywfn%2BsGdg3z34%3D&reserved=0.
Thanks, @jacobsoj ! I really appreciate your assistance with this.
Just to clarify - JOSS reviews are a little different from those at many journals. You'll want to see which items you can check off in the checklist above as you review the software and manuscript. For any boxes that you can't check right now, you'll want to tell the authors why you can't check the box, ie, what is missing or what is not working. The authors will then fix what you indicated. When they're satisfied that they've fixed the issues, they'll ask you to verify that you're satisfied with their work. The review is considered complete once all boxes are checked.
Thank you again, and please let me know how I might assist you as you work through the review.
@jacobsoj - I just wanted to check in to see how things are going. I recognize that this is your first JOSS review, so it might be a little confusing. We primarily use the checklist that's available above to review the software and manuscript. Please let me know if you have any questions or concerns. Thanks again!!
Thanks again @chainsawriot for the helpful comments! We have now uploaded a preprint of our paper where we report the simulation analyses concerning the default implementation of PAF and promax used in the EFA()
function and have adapted our citation in the manuscript by citing the preprint as you suggested.
@whedon generate pdf
@mdsteiner Thanks for keeping me updated. It is really nice that the preprint is available for all of us. I hope that the review of both papers (this JOSS paper and your preprint) can go faster.
@whedon add @jacobsoj as reviewer
OK, @jacobsoj is now a reviewer
@fboehm I just want to make sure that I don't need to take any action about the above changes, right?
@chainsawriot - Thanks for asking. I apologize for any confusion. No, you don't need to do anything. Thanks again!!
This package has a lot of useful features particularly the N_FACTORS and COMPARE() functions. The sequential chi-square model test on its own would save a lot of time, but then being able to evaluate across so many different extraction methods makes doing an EFA even more efficient and why I look forward to teaching my students about this package.
I found the examples in the vignette easy to follow and implement. To further test the package, I also used my own data for which I previously had run an EFA using the psych package, so I knew what to expect. All the functions worked as described with no problems, and users will appreciate the additional interpretation information provided in the output.
The suggestions proposed by the other reviewer were helpful, so I just had 2 suggestions based on the guidelines provided by the checklist:
For Documentation, I didn't see the Community guidelines in the paper or vignette (i.e., answer to: 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.) On GitHub, it does say: "If you want to contribute or report bugs, please open an issue on GitHub or email us…", which might be sufficient although an email isn't provided in the text.
Overall it is well-written, but this one sentence from the Summary is quite complex and might be better broken into 2: "After a factor solution has been found, especially for data structures in the field of intelligence research where usually high, positive factor intercorrelations occur, it is useful to subject the resulting factor solution to an orthogonalization procedure to achieve a hierarchical factor solution with one general and several specific factors. " Perhaps instead: "After a factor solution has been found, it is useful to subject the resulting factor solution to an orthogonalization procedure to achieve a hierarchical factor solution with one general and several specific factors. This situation especially applies to data structures in the field of intelligence research where usually high, positive factor intercorrelations occur."
Thank you @jacobsoj for your review and your suggestions. We are happy to hear that the package was well received and that it will be used for teaching purposes!
Concerning community guidelines, we have now added our email addresses in the README, such that the sentence you referenced now reads: "If you want to contribute or report bugs, please open an issue on GitHub or email us at markus.d.steiner@gmail.com or silvia.grieder@gmail.com." Moreover, the contact information is provided in the package DESCRIPTION file (available through packageDescription("EFAtools")
in R). There, we also include the repository URL and a BugReports URL, in line with the suggestion made by @chainsawriot.
Concerning the sentence in the summary in the paper: Thank you for this helpful suggestion! We agree that this facilitates understanding and have adopted your proposed wording in the paper.
Thanks again for your helpful comments!
@whedon check references
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):
OK DOIs
- 10.1177/1073191119845051 is OK
- 10.1007/BF02289209 is OK
- 10.7275/jyj1-4868 is OK
- 10.1177/0095798418771807 is OK
- 10.7287/peerj.preprints.3188v1 is OK
- 10.1016/j.csda.2013.02.005 is OK
- 10.1037/met0000200 is OK
- 10.1037/met0000074 is OK
- 10.1037/a0025697 is OK
- 10.1080/00273171.2011.564527 is OK
- 10.18637/jss.v048.i02 is OK
- 10.31234/osf.io/7hwrm is OK
MISSING DOIs
- None
INVALID DOIs
- None
@whedon generate pdf
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
@jacobsoj - I see that you've omitted checking two boxes in the checklist. With the modifications that @mdsteiner has made, are you now comfortable checking the boxes? Please do check them if you're comfortable doing so. We won't proceed until you're satisfied with the community guidelines and the quality of the writing.
Thanks again!
I am now comfortable checking those boxes, but it isn't letting me check them now. Is there something I need to do to allow me to edit them?
@whedon re-invite @jacobsoj as reviewer
OK, the reviewer has been re-invited.
@jacobsoj please accept the invite by clicking this link: https://github.com/openjournals/joss-reviews/invitations
@jacobsoj - Please click on the link above to accept the invitation. I've added you again so that you can continue to participate in the review, should there be a need. We're nearly ready to accept the submission, so there may not be anything left for you to do. We're not sure why you mistakenly lost access to the repository. Sorry for the trouble.
FWIW I reclicked on the 2 boxes although you had done that for me, just in case it matters later that I did it myself.
@whedon generate pdf
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
@whedon generate pdf
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
@mdsteiner - The reviewers have recommended publication of your submission. Before we can do that, I need to you to: 1. examine the article pdf proof for errors and 2. archive the package with, for example, zenodo or figshare. Please record and report the version number and archive DOI in this comments thread. Double-check that the metadata for the archived package has the same title and authors list as your JOSS manuscript. Thanks again!
Thanks @fboehm! We have checked the pdf proof and everything looks fine. The package is now archived as version 0.2.0 on zenodo with the archive DOI 10.5281/zenodo.4032509
Thanks again @chainsawriot and @jacobsoj for the many helpful comments and suggestions!
@whedon set 10.5281/zenodo.4032509 as archive
OK. 10.5281/zenodo.4032509 is the archive.
@whedon accept
Attempting dry run of processing paper acceptance...
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):
OK DOIs
- 10.1177/1073191119845051 is OK
- 10.1007/BF02289209 is OK
- 10.7275/jyj1-4868 is OK
- 10.1177/0095798418771807 is OK
- 10.7287/peerj.preprints.3188v1 is OK
- 10.1016/j.csda.2013.02.005 is OK
- 10.1037/met0000200 is OK
- 10.1037/met0000074 is OK
- 10.1037/a0025697 is OK
- 10.1080/00273171.2011.564527 is OK
- 10.18637/jss.v048.i02 is OK
- 10.31234/osf.io/7hwrm is OK
MISSING DOIs
- None
INVALID DOIs
- None
:wave: @openjournals/joss-eics, this paper is ready to be accepted and published.
Check final proof :point_right: https://github.com/openjournals/joss-papers/pull/1731
If the paper PDF and Crossref deposit XML look good in https://github.com/openjournals/joss-papers/pull/1731, then you can now move forward with accepting the submission by compiling again with the flag deposit=true
e.g.
@whedon accept deposit=true
Thank you, @mdsteiner for the archiving. Thanks to @jacobsoj and @chainsawriot for excellent work on the reviews. The submission is now recommended for acceptance. The editors in chief will make a final review.
@whedon accept deposit=true
Submitting author: @mdsteiner (Markus Steiner) Repository: https://github.com/mdsteiner/EFAtools Version: v0.1.1 Editor: @fboehm Reviewers: @jacobsoj, @chainsawriot Archive: 10.5281/zenodo.4032509
:warning: JOSS reduced service mode :warning:
Due to the challenges of the COVID-19 pandemic, JOSS is currently operating in a "reduced service mode". You can read more about what that means in our blog post.
Status
Status badge code:
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
@jacobsoj & @chainsawriot, please carry out your review in this issue by updating the checklist below. If you cannot edit the checklist please:
The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @fboehm 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 ✨
Review checklist for @jacobsoj
Conflict of interest
Code of Conduct
General checks
Functionality
Documentation
Software paper
Review checklist for @chainsawriot
Conflict of interest
Code of Conduct
General checks
Functionality
Documentation
Software paper