UBC-MDS / software-review

MDS Software Peer Review of MDS-created packages
1 stars 0 forks source link

Submission: rb4model (R) #27

Open andrealee011 opened 4 years ago

andrealee011 commented 4 years ago

Submitting Author: Andrea Lee (@andrealee011 ), Jaekeun Lee (@agdal1125), Sakariya Aynashe (@eyrakas), Xinwen Wang (@xiw315 ) Repository: rb4model Version submitted: v1.1.0 Editor: Varada Kolhatkar (@kvarada) Reviewer 1: Yi Liu (@v5y8)
Reviewer 2: Victor Cuspinera-Contreras (@vcuspinera) Archive: TBD
Version accepted: TBD


Package: rb4model
Title: rb4model
Version: 0.0.0.9000
Authors@R: 
    c(person(given = "Sakariya",
           family = "Aynashe",
           role = c("aut")),
       person(given = "Andrea",
           family = "Lee",
           role = c("aut", "cre"),
           email = "andrea.lee.011@gmail.com"),
        person(given = "Jaekeun",
           family = "Lee",
           role = c("aut")),
        person(given = "Xinwen",
           family = "Wang",
           role = c("aut")))
Description: An R package that preprocesses data and performs machine learning!
License: MIT + file LICENSE
Encoding: UTF-8
LazyData: true
RoxygenNote: 7.0.2
Suggests: 
    testthat (>= 2.1.0),
    covr,
    knitr,
    rmarkdown
Imports: 
    mice,
    stats,
    caret,
    datasets,
    mlbench,
    randomForest,
    e1071
URL: https://github.com/UBC-MDS/rb4model
BugReports: https://github.com/UBC-MDS/rb4model/issues
VignetteBuilder: knitr

Scope

Technical checks

Confirm each of the following by checking the box.

This package:

Publication options

JOSS Options - [ ] The package has an **obvious research application** according to [JOSS's definition](https://joss.readthedocs.io/en/latest/submitting.html#submission-requirements). - [ ] The package contains a `paper.md` matching [JOSS's requirements](https://joss.readthedocs.io/en/latest/submitting.html#what-should-my-paper-contain) with a high-level description in the package root or in `inst/`. - [ ] The package is deposited in a long-term repository with the DOI: - (*Do not submit your package separately to JOSS*)
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

v5y8 commented 4 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:

For packages co-submitting to JOSS

The package contains a paper.md matching JOSS's requirements with:

  • [ ] A short summary describing the high-level functionality of the software
  • [ ] Authors: A list of authors with their affiliations
  • [ ] A statement of need clearly stating problems the software is designed to solve and its target audience.
  • [ ] References: with DOIs for all those that have one (e.g. papers, datasets, software).

Functionality

Final approval (post-review)

Estimated hours spent reviewing:


Review Comments

I like the code style; it's very simple and easy-to-read!

However, there are a few problems with your project, structure wise.

- Overall, I think you need to upgrade your CI / automated build process; there were quite a few things I noticed were missing and/or were odd:

        'datasets' 'e1071' 'mlbench' 'randomForest'
        All declared Imports should be used.

These libraries need to be removed from DESCRIPTIONS.

vcuspinera commented 4 years ago

Hi rb4model team, I was assigned as a reviewer of your R package and I am pleased to share the following review and recommendations:

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:

For packages co-submitting to JOSS

The package contains a paper.md matching JOSS's requirements with:

  • [X] A short summary describing the high-level functionality of the software
  • [X] Authors: A list of authors with their affiliations
  • [X] A statement of need clearly stating problems the software is designed to solve and its target audience.
  • [ ] References: with DOIs for all those that have one (e.g. papers, datasets, software).

Functionality

Final approval (post-review)

Estimated hours spent reviewing:


Review Comments

I found your package very complete in the sense that have complementary functions that help you to perform an appropriate data pre-processing. I believe that the idea is very good and you could improve your package mainly sharing more information for the user.

output:

[[1]] [1] "X2" "X5"

[[2]] [1] "X1" "X3" "X4"

- Forward Selection function: When I run the `ForwardSelection`, if I change the minimum number of features it doesn’t return an appropriate output of what I am asking. In the next example I ask at least for three features and I get only one as a result:
```{r}
y <- iris$Species
x <- iris[c(1,2,3,4)]
ffs <- ForwardSelection(feature=x, label=y, my_mod="rf", min_f = 2)
ffs
[1] 2

print(head(x[ffs], 10))

[output]:
   Sepal.Width
1          3.5
2          3.0
3          3.2
4          3.1
5          3.6
6          3.9
7          3.4
8          3.4
9          2.9
10         3.1

I hope you find this review useful!

andrealee011 commented 4 years ago

Thank you for the feedback! It was extremely hepful! Because of time constraints, we were unable to address all your feedback. Here is a list of the changes we did make:

Please find our new relase here: https://github.com/UBC-MDS/rb4model/tree/v1.1.1

eyrakas commented 4 years ago

Thank you @v5y8 and @vcuspinera for your valuable feedback. We have made the changes outlined above by @andrealee011. I just wanted to add one more comment on the feature_splitter for the use of OHE. The intended use of the function was to help users visualize what kind of data they are dealing with, i.e. which ones are numerical and which ones are categorical. Kind of quick EDA for them. Not necessarily to do full data preprocessing. But we have changed its output into a data frame which is more presentable to users.