UBC-MDS / software-review-2022

0 stars 0 forks source link

Submission group 6: linregasm (R) #6

Open AndyYang80 opened 2 years ago

AndyYang80 commented 2 years ago

name: linregasm about: This package is built to contain functions to be able to quickly and easily test the linearity assumptions before preforming linear regression or multiple linear regression for a specified dataset.


Submitting Authors:

Repository: https://github.com/UBC-MDS/linregasm Version submitted: 1.0.0 Submission type: Standard Editor: TBD

Reviewers:

Archive: TBD Version accepted: TBD


Package: linregasm
Title: Package for testing linear and multiple linear regression assumptions
Version: 0.0.0.9000
Authors@R: 
    c(person("Yair", "Guterman", ,"yairguterman1@gmail.com", role = c("aut", "cre")),
      person("Hatef ", "Rahmani", ,"hatef.rahmani.f@gmail.com"),
      person("Song ", "Yang", ,"sbayang@uwaterloo.ca"))
Description: This package is built to contain functions to be able to quickly and easily test the linearity assumptions befre preforming linear regression or multiple linear regression for a specified dataset. The package contains 3 functions one for checking multicolliniarity, one for checking constant variance and one for checking normality in the residuals.
License: MIT + file LICENSE
Encoding: UTF-8
LazyData: true
Roxygen: list(markdown = TRUE)
RoxygenNote: 7.1.1
Suggests: 
    rmarkdown,
    testthat (>= 3.0.0)
Config/testthat/edition: 3
Imports: 
    dplyr,
    car,
    ggplot2,
    tibble,
    knitr
VignetteBuilder: knitr

Scope

Technical checks

Confirm each of the following by checking the box.

This package:

Publication options

MEE Options - [ ] The package is novel and will be of interest to the broad readership of the journal. - [ ] The manuscript describing the package is no longer than 3000 words. - [ ] You intend to archive the code for the package in a long-term repository which meets the requirements of the journal (see [MEE's Policy on Publishing Code](http://besjournals.onlinelibrary.wiley.com/hub/journal/10.1111/(ISSN)2041-210X/journal-resources/policy-on-publishing-code.html)) - (*Scope: Do consider MEE's [Aims and Scope](http://besjournals.onlinelibrary.wiley.com/hub/journal/10.1111/(ISSN)2041-210X/aims-and-scope/read-full-aims-and-scope.html) for your manuscript. We make no guarantee that your manuscript will be within MEE scope.*) - (*Although not required, we strongly recommend having a full manuscript prepared when you submit here.*) - (*Please do not submit your package separately to Methods in Ecology and Evolution*)

Code of conduct

stevenleung2018 commented 2 years ago

Package Review

Please check off boxes as applicable, and elaborate in comments below. Your review is not limited to these topics, as described in the reviewer guide

Documentation

The package includes all the following forms of documentation:

Functionality

Estimated hours spent reviewing: 47 minutes.


Review Comments

  1. It cannot yet be installed from "CRAN". I recommend removing that part of the installation instruction until it is ready;
  2. The normality() example in the "Usage" section forgot to mention running the line library(linregasm) or be explicit with linregasm::normality(). I know it might be obvious but the "Usage" section should be self-sufficient. Also, there should be definitions of the dummy data frames and values for the examples to run. In fact, the examples in the vignettes are better than those in "Usage";
  3. The examples in the "Usage" section should also show the optional arguments of p_threshold and threshold;
  4. The README.md does mention about "contributing guidelines" but there is no standalone file. The closest thing I can find is the CODE_OF_CONDUCT.md (entitled "Contributor Covenant Code of Conduct"). But the document only talks about the general principles but NOT specific process of contributing (like creating a GitHub issue, or Pull Request, or contacting the authors via a certain mean);
  5. For the multicollinearity() function, I suggest that the function proactively try to simulate the removal of the feature with the highest VIF and see what the VIFs of the subset of the features would look like;
  6. The tests run with 0 errors and 0 warnings. Well done!
  7. No codedev or ci-cd badges on README; and
  8. Last but not least, the package is really useful for understanding the features before starting with linear regression. Well done.
imtvwy commented 2 years ago

Package Review

Please check off boxes as applicable, and elaborate in comments below. Your review is not limited to these topics, as described in the reviewer guide

Documentation

The package includes all the following forms of documentation:

Functionality

Estimated hours spent reviewing:


Review Comments

  1. You may consider to publish your documentation on a website and link it from README so that other users can locate the documentation pages easier.
  2. No URL and BugReports link find in DESCRIPTION file.
  3. I am able to install your package by following the installation instruction, but I guess the installation from CRAN is not relevant.
  4. Adding sample outputs in the usage and examples section can help others to understand the usage better
  5. You may also consider to add the ci-cd and codecov badges on README page so that other users would know clearly about the project status.
  6. The objective and functionalities of the packages are well-explained on the README page. Overall, I think it is a useful package and simple to use.
squisty commented 2 years ago

Package Review

Please check off boxes as applicable, and elaborate in comments below. Your review is not limited to these topics, as described in the reviewer guide

Documentation

The package includes all the following forms of documentation:

Functionality

Estimated hours spent reviewing: ~30 mins


Review Comments

  1. For the homoscedasticity function, returning a null list instead of just an error message might be a bit confusing. However I understand how hard it is to correctly assert that the parameters for that function are correct so perhaps this is not an option.
  2. Tests all completed with no errors and the functions performed expectedly when I gave them a variety of parameters.
  3. No CodeCov or R-CMD check badges on the readme, making it difficult to determine whether or not the code has had tests written for functionality from an outside perspective.
  4. A rather minor issue but for all 3 functions, the default/optional parameters are not listed in the roxygen as optional or with default values.
  5. Another small issue, there seems to be a typo in the Usage section of the README: "Test for Multicollinearity To test for homoscedasticity, use the..."
  6. Apart from the things mentioned above I think the package looks great and will be helpful for anyone looking to learn more about regression models and assumptions with them.
mahm00d27 commented 2 years ago

Package Review

Documentation

The package includes all the following forms of documentation:

Functionality

Estimated hours spent reviewing:


Review Comments