-
-
Notifications
You must be signed in to change notification settings - Fork 104
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
submission: outcomerate #213
Comments
Editor checks:
Editor comments👋 @rtaph. Thanks for this submission. I've run Reviewers: @carlganz, @nealrichardson |
🙏@carlganz for agreeing to review. Note tentative due date above. |
Thanks @nealrichardson for agreeing to review. I've also tagged you in the issue above. Note review date and let me know if you need more time. |
@rtaph You can add a badge to your readme right away. Badge location is:
It will update as your review progresses and change to green once accepted. 🙏 |
Package Review
DocumentationThe package includes all the following forms of documentation:
Functionality
Final approval (post-review)
Estimated hours spent reviewing: 3 Review CommentsThis package is very focused on a specific problem, and it solves it well. It wraps and automates what would otherwise be tedious arithmetic and formulas you'd have to keep looking up. Here are a few notes on ways I think you can improve the code and documentation of the package. Code functionality
Code style
Docs
Vignette
Tests
DESCRIPTION
|
Thank you @karthik, @nealrichardson, and @carlganz for your support. I will review these comments over the weekend and get back to you shortly. |
Sorry that I have not written the review yet. I will get done by tomorrow I promise. |
Package ReviewPlease check off boxes as applicable, and elaborate in comments below. Your review is not limited to these topics, as described in the reviewer guide
DocumentationThe package includes all the following forms of documentation:
Functionality
Final approval (post-review)
Estimated hours spent reviewing: 2 Review CommentsThe goal of the
Good work! |
👋 @rtaph both reviews are now in. Please let us know when you're had a chance to read and respond to these comments. 🙏 |
Gentlemen-- thank you all for the feedback and sorry it has taken a while to respond. I am integrating your points and hope to be able to share a revised version soon. Aiming for end of week. Here are my replies to each point:
Yes, I see where you are coming from and I agree in the case of the default where
I find it useful to calculate grouped outcome rates while fieldwork is happening and when counts are small. For example, computing outcome rates by researcher helps spot early problems with field work. However, when counts are low at the start of a project, the rates are unstable. Having numerators and denominators can be useful in combination with empirical Bayes methods to smooth out the raw estimates. I plan to write a vignette on this but have not had time yet.
Good catch. I will add a case for this.
Great point. I will make the change.
Clever. I’ve made the change.
One thing I am concerned about with this change is that the table would be coerced to an unnamed numeric vector, and that the order of the input then suddenly matters to the function output. A table object whose first element is the counts for “I” would not give the same results as a table whose first element is, say, counts for “NC”.
So if I understand you, you are suggesting to have the different methods resolve to the table method. Is that correct? I will look into this.
Yes, it does, unless you return the numerator and denominator. Otherwise it makes no difference.
Interesting—I am open to the idea. Will see how this works when I try to address the point about using the table method as the ultimate method called.
Great suggestion.
Much better, yes. Thanks for the suggestion.
Good point. Will add more text to briefly explain what each rate represents.
I will write a separate doc for
Agreed. Will simplify it down to only those packages used.
You make a fair point. I think once I add the function eligibility_rate() and show how to calculate it based on ineligible respondents, this will no longer be an issue. The 0.8 in the example is purely illustrative for the fictional case.
Yes, sure.
Yep, good point.
Yes, good suggestion.
Agreed. Thanks for the catch.
Thanks.
I was originally going to use a dataset from the package but then changed my mind and made my own
Sure.
Sure.
Yes, sure. I will add a raw data folder and docs for the
I think I had implemented it this way to keep the names. I'll take a look at it again.
Yes, will do.
Good suggestion.
Yes, will do.
|
As far as I know, this method definition doesn't coerce anything--it just says "use this function". A table behaves like a numeric vector with names, so the code in When I tried it, all of your tests passed, so if there's some behavior that this changes or alters, it's not anything you're asserting in tests. If it's important, I suggest writing a test and seeing if it fails with this change. |
Dear @nealrichardson, @carlganz, and @karthik, I have implemented all recommendations to the package (ropensci/outcomerate@2a178ba), save for writing another vignette to explain the use of Thanks, |
Thanks @rtaph! @carlganz and @nealrichardson can you please respond and sign off on this or raise any other concerns? |
LGTM |
Thanks for the reminder. Looks good to me too; I checked the final approval box on the checklist above. |
Congrats @rtaph, your submission has been approved! 🎉 Thank you for submitting and @carlganz and @nealrichardson for thorough and timely reviews. To-dos:
Welcome aboard! We'd also love a blog post about your package, either a short-form intro to it (https://ropensci.org/technotes/) or long-form post with more narrative about its development. ((https://ropensci.org/blog/). If you are, @stefaniebutland will be in touch about content and timing. |
Thank you @karthik, I will do so shortly. Regarding a blog post, I would be happy to participate. @nealrichardson and @carlganz, with your permission, I would like to add your names to the DESCRIPTION file as reviewers. Do you have an ORCID you would like me to include? |
Thanks @rtaph. Sure, you can add me to DESCRIPTION as a reviewer. I don't have an ORCID. |
Done. Thanks again, @karthik, @nealrichardson, and @carlganz! |
@rtaph Glad to hear you're interested in contributing a blog post about This link will give you many examples of blog posts by authors of onboarded packages so you can get an idea of the style and length you prefer: https://ropensci.org/tags/review/. Here are some technical and editorial guidelines: https://github.com/ropensci/roweb2#contributing-a-blog-post. We ask that you submit your draft post via pull request a week before the planned publication date so we can give you some feedback. Deadline? We can publish 2018-10-02 if you submit your draft by 2018-09-25. Let me know if you prefer a later date. Happy to answer any questions. |
@stefaniebutland The 2018-09-25 sounds good. I'll get started on something and let you know if I have any questions. Thanks :) |
Hi @rtaph. Still hoping to publish your post next Tuesday Oct 2nd. Will you be able to submit a draft by Thurs Sep 27? |
Hi @stefaniebutland ! Yes, sorry for being a bit late. Will try to submit by Thursday :) |
@karthik, can you help me initiate a I am writing the rOpenSci onboarding blog and would like to hyperlink examples in the vignette. |
@rtaph Done. You also have admin now to take care of other housekeeping. 🙏 |
Much appreciated, @karthik ! |
Summary
What does this package do? (explain in 50 words or less):
outcomerate
is a lightweight R package that implements the standard outcome rates for surveys, as defined in the Standard Definitions of the American Association of Public Opinion Research (AAPOR).Paste the full DESCRIPTION file inside a code block below:
URL for the package (the development repository, not a stylized html page): https://github.com/rtaph/outcomerate
Please indicate which category or categories from our package fit policies this package falls under *and why(? (e.g., data retrieval, reproducibility. If you are unsure, we suggest you make a pre-submission inquiry.):
Who is the target audience and what are scientific applications of this package?
Survey analysts are the primary target. The package has applications for any survey that uses standard disposition codes and requires the calculation of AAPOR outcome rates.
Are there other R packages that accomplish the same thing? If so, how does
yours differ or meet our criteria for best-in-category?
Not to my knowledge.
If you made a pre-submission enquiry, please paste the link to the corresponding issue, forum post, or other discussion, or @tag the editor you contacted.
No inquiry made.
Requirements
Confirm each of the following by checking the box. This package:
Publication options
paper.md
matching JOSS's requirements with a high-level description in the package root or ininst/
.Detail
Does
R CMD check
(ordevtools::check()
) succeed? Paste and describe any errors or warnings:Does the package conform to rOpenSci packaging guidelines? Please describe any exceptions:
If this is a resubmission following rejection, please explain the change in circumstances:
Not applicable.
If possible, please provide recommendations of reviewers - those with experience with similar packages and/or likely users of your package - and their GitHub user names:
The text was updated successfully, but these errors were encountered: