jgcri / ambrosia Goto Github PK
View Code? Open in Web Editor NEWAn R package for calculating and analyzing food demand and in accordance with the Edmonds et al food demand model
Home Page: https://jgcri.github.io/ambrosia/
License: Other
An R package for calculating and analyzing food demand and in accordance with the Edmonds et al food demand model
Home Page: https://jgcri.github.io/ambrosia/
License: Other
While from a technical point the app works like a charm, it is not really usable for me as a beginner as explanations of the different variables (including their units) are missing.
Without it, its is neither clear what the different parameter settings mean, nor what the tables or figures show.
I would suggest to either add explanations/legends to the app explaining all the different variables and their units (best, but also very time consuming solution) or to put a disclaimer into the documentation of this function and the vignette, explaining that this app is targeted at advanced users and requires a priori knowledge about the meaning of all these variables. Ideally, such a disclaimer should come with an explanation how that knowledge can be obtained.
Change from Travis-CI
and Appveyor
to GitHub Actions. Swap badges in the README once operable. Also add coverage indicator.
Change the name of the repository and the R package to ambrosia
- all lower case.
Guidelines are missing for third parties wishing to 1) Contribute to the software (README states, that one should get in contact with the team, but does not state how to do so) 2) Report issues or problems with the software (should that be done via Github Issues, or differently?) 3) Seek support (unclear who to approach on which channel in this case)
I see some potential for improvement in the provided vignette. In particular, I see the following issues:
vignette("knitr")
as an example how something like that could look like.Food_Demand
created in 1.2), but in other cases it does not (e.g. 1.1 builds a parameter object, while 1.2 seems to use the same parameter object but rebuilds it from scratch rather than using the result from 1.1). It would be nice to just reuse the objects from previous code snippets.Solving these three issues whould in my opinion greatly improve the readability of the vignette.
Add Zenodo badge for release DOI.
The LICENSE file states that the software package is licensed under BSD-2, but the provided license actually extends the original BSD-2 license text (compare the original license text here: https://opensource.org/licenses/BSD-2-Clause) and adds additional burden on the user, making it a custom license.
Please remove the license restrictions which do not belong to the BSD-2 license or change the applied license.
Below find my review comments for the JOSS review at openjournals/joss-reviews#2890. Any questions, please let me know.
Thank you for the chance to review this package. Subject matter is mostly outside of my area of expertise and I did learn quite a bit. That being said, anytime software can be written to help ease implement important modelling efforts, then that is worthy of sharing. Your ambrosia
package is no exception! Nicely done.
A couple of other general comments:
Below I have provide some comments related to the items on the checklist that I have not yet checked off on. I have also included some specific comments for you to consider in your revisions. Nothing major, just some items that I think will help improve upon an already good contribution.
In README's installation section think about using remotes::install_github() instead of devtools::install_github(). remotes is much lighter weight and focuses on the install which is the specific use case here. There is some disagreement on this but I prefer remotes. Again, up to you all.
A few Rd warnings on install. First three are from including () in the \link{}. Last one appears to be from line 172 in food-demand-mc.R. Nothing to link to in those.
Rd warning: C:/Users/JHollist/AppData/Local/Temp/RtmpOSX3FJ/R.INSTALL516c76db875/ambrosia/man/calculate_ambrosia_params.Rd:5: missing link 'create_dataset_for_parameter_fit()'
Rd warning: C:/Users/JHollist/AppData/Local/Temp/RtmpOSX3FJ/R.INSTALL516c76db875/ambrosia/man/calculate_ambrosia_params.Rd:59: missing link 'create_dataset_for_parameter_fit()'
Rd warning: C:/Users/JHollist/AppData/Local/Temp/RtmpOSX3FJ/R.INSTALL516c76db875/ambrosia/man/calculate_ambrosia_params.Rd:23: missing link 'create_dataset_for_parameter_fit()'
Rd warning: C:/Users/JHollist/AppData/Local/Temp/RtmpOSX3FJ/R.INSTALL516c76db875/ambrosia/man/vec2param.Rd:69: missing link 'A_s, A_n, xi_ss, xi_cross, xi_nn, nu1_n, lambda_s, k_s, Pm, psscl, pnscl'
matrix:
config:
- {os: windows-latest, r: 'release'}
- {os: macos-10.15, r: 'release'}
It seems that by default the supplied vignette is not being installed when running devtools::install_github('JGCRI/ambrosia')
I would suggest to ask users to run devtools::install_github('JGCRI/ambrosia', build_vignettes = TRUE)
instead.
Doing so would also allow to refer to the vignette via the command vignette("ambrosia_vignette")
instead of referring to the vignettes directory.
(this is related to openjournals/joss-reviews#2890)
Add PNNL License and Disclaimer once approved.
Prepare JOSS submission directory and contents:
README.md
paper.md
paper.bib
paper_local.pdf
Archive the code found in the paper1
directory for the following paper:
Edmonds J.A., R.P. Link, S.T. Waldhoff, and Y. Cui. 2017. "A Global Food Demand Model for the Assessment of Complex Human-Earth Systems." Climate Change Economics 8, no. 4:Article No. 1750012. PNNL-SA-121534. doi:10.1142/S2010007817500129
Remove paper1
recursively after archival and cite in the package.
NOTE: This should not be done until the new version has been tested. Potentially setup a meta-repository for the Edmonds paper.
README.md refers to Calvin et al. 2019 but does not provide the corresponding citation.
As the parameters seem to have a central role in the whole process a bit more explanation and a better visibility of these explanations throughout the documentation would be useful. Some examples
A_s
is described as "Scaling parameter for staples (constant)", but it is unclear to me how it works. What exactly is scaled here and which range of scaling factors makes sense? How can these parameters be estimated?Please check again the documentation with a focus on the parameters and make sure that the correspoding parameters are either explained on the page or the parameter description is linked along with the use of these parameter names
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.