Closed nmstreethran closed 3 years ago
Thanks for a thorough review, we will get back to you soon with the changes.
Hello @nmstreethran,
Thanks for a thorough review, I have updated all the comments you have provided. Though there is a small clarification regarding the data used here -
pollucheck
is not specific to Indian air pollution data, only one source Central Pollution Control Board is specific to India, rest of the sources OpenAQ and AirNow data is available all around the globe.Please let us know if we need to change anything.
Cheers! Adithi
Hi @adithirgis, thank you for the quick update! I'll go through your submission again and let you know by the end of today if there is anything else to address.
Thanks for the clarification regarding the supported data sources. Your README still says that "pollucheck helps exploring the open-source Indian air quality data", and the OpenAQ and AirNow links point to data specific to India. Could you update this?
These links seem more appropriate:
Thanks so much for these as well. We have updated now the documentation as well.
Cheers! Adithi
Thanks @adithirgis. I have just a few minor comments left:
DESCRIPTION
paper.md
pollucheck
should be enclosed in backticks to be consistent with the rest of the paper.inst/shiny/WWW/include.Rmd
inst/shiny/app.R
README.md
@adithirgis Additionally, there were a few conflicts and a note regarding a deprecated function when I served the app locally using pollucheck::pollucheck_run()
. You can find the log here:
Loading required package: shiny
── Attaching packages ───────────────────────────────────────────────────── tidyverse 1.3.1 ──
✔ ggplot2 3.3.5 ✔ purrr 0.3.4
✔ tibble 3.1.2 ✔ dplyr 1.0.7
✔ tidyr 1.1.3 ✔ stringr 1.4.0
✔ readr 2.0.0 ✔ forcats 0.5.1
── Conflicts ──────────────────────────────────────────────────────── tidyverse_conflicts() ──
✖ dplyr::filter() masks stats::filter()
✖ dplyr::lag() masks stats::lag()
Stackoverflow is a great place to get help:
https://stackoverflow.com/tags/shinyjs
Attaching package: ‘shinyjs’
The following object is masked from ‘package:shiny’:
runExample
The following objects are masked from ‘package:methods’:
removeClass, show
Registered S3 method overwritten by 'quantmod':
method from
as.zoo.data.frame zoo
biwavelet 0.20.21 loaded.
Attaching package: ‘biwavelet’
The following object is masked from ‘package:ggplot2’:
arrow
Attaching package: ‘DT’
The following objects are masked from ‘package:shiny’:
dataTableOutput, renderDataTable
Attaching package: ‘broom’
The following object is masked from ‘package:bslib’:
bootstrap
data.table 1.14.0 using 2 threads (see ?getDTthreads). Latest news: r-datatable.com
Attaching package: ‘data.table’
The following objects are masked from ‘package:dplyr’:
between, first, last
The following object is masked from ‘package:purrr’:
transpose
Attaching package: ‘janitor’
The following objects are masked from ‘package:stats’:
chisq.test, fisher.test
Attaching package: ‘zoo’
The following objects are masked from ‘package:base’:
as.Date, as.Date.numeric
Listening on http://127.0.0.1:3542
New names:
* `` -> ...3
* `` -> ...4
* `` -> ...5
* `` -> ...6
Warning in FUN(X[[i]], ...) : NAs introduced by coercion
Warning in FUN(X[[i]], ...) : NAs introduced by coercion
Warning in FUN(X[[i]], ...) : NAs introduced by coercion
Warning in FUN(X[[i]], ...) : NAs introduced by coercion
`mutate_all()` ignored the following grouping variables:
Columns `day`, `Location`
Use `mutate_at(df, vars(-group_cols()), myoperation)` to silence the message.
Warning: `funs()` was deprecated in dplyr 0.8.0.
Please use a list of either functions or lambdas:
# Simple named list:
list(mean = mean, median = median)
# Auto named with `tibble::lst()`:
tibble::lst(mean, median)
# Using lambdas
list(~ mean(., trim = .2), ~ median(., na.rm = TRUE))
This warning is displayed once every 8 hours.
Call `lifecycle::last_warnings()` to see where this warning was generated.
This is the output of lifecycle::last_warnings()
:
[[1]]
<deprecated>
message: `funs()` was deprecated in dplyr 0.8.0.
Please use a list of either functions or lambdas:
# Simple named list:
list(mean = mean, median = median)
# Auto named with `tibble::lst()`:
tibble::lst(mean, median)
# Using lambdas
list(~ mean(., trim = .2), ~ median(., na.rm = TRUE))
Backtrace:
1. pollucheck::pollucheck_run()
72. dplyr::funs(mean, sd)
Hello @nmstreethran!
Thank so much for pointing the deprecated function.
README.md line 109: "outliers" is spelled incorrectly.
I am not able to get this wrong spelling could you please point it out? Is it spelled outliers?
Thanks again Cheers! Adithi
Hello @nmstreethran!
We have implemented all your suggestions.
Thanks! Adithi
Hi @adithirgis, thank you very much!
Here is the spelling mistake in README (line 110):
Specify a multiple (X) to remove outliers based on Mean and SD- If you want to clean your data set based on outliers, not usually necessary, use only if you want to remove outiliers based on Mean and Standard Deviation values.
You may close this issue once you correct this typo. I'll inform the editor that my review is complete.
Great work on the app!
Hello @nmstreethran,
Thanks for reviewing and helping us improve this application. I have fixed the typo.
Cheers! Adithi
Do we need to close this issue?
@adithirgis, no problem! I'll close the issue now.
Hi @adithirgis. I'm opening this issue as part of my review for JOSS (openjournals/joss-reviews#3435). You can find my initial comments below. I'll go through your submission again once you make some changes and let you know if I have any further comments. Please feel free to ping me if anything is unclear.
Thanks!
General comments
You seem to have renamed this repository from OpenSourceAirQualityApp to pollucheck. However, in a number of files, the repository's name and URL still point to the old name. These need to be fixed. The Shiny app is still called OpenSourceAirQualityApp as well, but this is not an issue, so it's up to you if you want to rename it.
Some wording should be edited for consistency. Use either:
Minor corrections:
.github/workflows/R-CMD-check.yaml
, themaster
branch is redundant and can be removed.README
In line 9, state what CPCB stands for. In line 11, I think it will be useful to add a hyperlink to the openair package.
The section headings are quite long. I think you could use shorter headings, followed by a description below. If you try to use GitHub's table of contents to navigate through the README, it will be difficult to make out the heading titles.
Some of the images are not indented correctly. Can you indent them so that they align with their corresponding bullet point?
Could you also add the installation instructions to serve the app locally here?
Community guidelines
I think no description is needed for point 1; just add a link to CONTRIBUTING.md. I suggest adding a disclaimer that contributors must adhere to the code of conduct, and a link to it.
Author credit statement
This is a very long sentence; do you think you can split it up?
Contributing
The link to the Code of Conduct in CONTRIBUTING.md is broken. You can move the Code of Conduct to
.github
to fix this.Fixing typos
It would be good to include PR instructions in this section. You have suggested using the GitHub interface directly, so you can add a link to the relevant GitHub documentation for this (e.g., "Creating a pull request from a fork").
"... as long as the changes are made in the source file", as well as the roxygen2 description, might be a bit confusing to new contributors. If a contributor wants to fix a typo in the README, then it won't be necessary for them to learn about roxygen2 comments. My suggestion is to clarify that if contributors find any typos in an
.Rd
file, then they should make changes in the corresponding.R
file, as.Rd
files are automatically generated by roxygen2 and should not be edited by hand.Bigger changes
I think
install.packages("devtools")
should be the first step here. My base R environment did not include devtools, so I had to install it first.You can probably remove "If you haven't done this before", since this is targeted towards those already familiar with Git and R/tidyverse. I think a link to usethis's documentation would be useful here though.
In point 2, you mention that
devtools::check()
should pass cleanly. However, I got a note regarding the package size when I ran the check:I don't know how this note can be fixed. Perhaps you could clarify that the check should pass without errors or warnings.
Point 4: "git" -> "Git".
Point 5: "For user-facing changes, add a bullet to the top of
NEWS.md
(i.e. just below the first header)." There is noNEWS.md
at present, so you could create one and add some placeholder text.DESCRIPTION
Suggested changes by line number:
App
These things were picked up by the linter in
inst/shiny/app.R
:fortify()
may be deprecated in the future."Paper
Summary
In the second sentence of paragraph 1, there is a comma missing between "actions" and "quantification".
In the second paragraph, I think you need to introduce pollucheck first instead of shiny. Something along the lines of "pollucheck is an interactive R application built using the shiny package...", where you add a citation to the shiny package.
I think it's important to mention in the summary that this app is for exploring Indian air pollution data.
You mention in the "App Display" section the different packages used for building pollucheck. I think you can move that sentence to the summary, so that this section focusses on the app's functionality.
Limitations
In point 5, can you briefly elaborate why caution must be exercised regarding wind direction data? You stated in
DESCRIPTION
that only hourly data is processed correctly. Can you state that here?Installation
The heading level for the "Installation" seems incorrect.
I think it's useful to state here that the app is already hosted online on shinyapps.io, but users can choose to serve it locally using the installation instructions provided.
I recommend installing devtools as the first step. Additionally, if you are importing the pollucheck library, it won't be necessary to use the
pollucheck::
prefix to run the app. Therefore, I think your installation commands could be changed to one of the following:In the last paragraph:
Case Study
It will be good to include some information about the data used for the case study. You say it's based on 18 months of pollution data -- what's the study area and what are the data sources?
In paragraph 3, "Interquartile" should be "interquartile".
Bibliography
The bibliography entries' titles are not capitalised correctly in the compiled PDF. To preserve capitalisation, you can wrap the titles in quotes. For example:
There is also some spacing after the decimal/dot in some of the titles:
Upadhya:2020
: "mmaqshiny v1. 0..."Spandana:2021
: "PM2. 5/PM10 ratio..."Chu:2015
: "...PM10-PM2. 5 relationship"