MFaymon/spINAR

Review

Opened this issue · 2 comments

Dear Authors,

I reviewed the JOSS submission (manuscript and the software). The paper is well-written, and the software structure is organized and has a clear purpose.

  1. Regarding software documentation, I suggest including a reproducible result from the literature for each provided functionality. For example, if not too computationally extensive, the spINAR results for Poi-INAR(1) or NB-INAR(1) from Table 1 or 2 in Jentsch and Weiß (2017) or a data set from a real-world application, like the iceberg stocks from Jung and Tremayne (2010), the Cascade-Turnoverdata or monthly demand of different car spare parts (time series of the car part 2404) from Snyder (2002) analyzed Faymonville et al. (2022). This would enable the user to validate the results from the R package with the published literature. If the reproducible examples are too extensive for the examples section of each documented function, you could provide them within a short vignette highlighting the functionality similar to the README.md of the GitHub repository. Related to this, you could also include a references section in the R documentation of each function.

  2. Regarding the software package functionality, I performed tests on the provided functions and found that for some parameters (settings might be artificial), a check needs to be included to intercept these incorrect entries.

library(spINAR)

  • #spinar_boot
    dat2 <- spinar_sim(n = 200, p = 2, alpha = c(0.2, 0.3), pmf = dgeom(0:60, 0.5))
    spinar_boot(x = dat2, p = 2, B = 50, setting = "p", type = "mom", distr = "geo", level=0)
    spinar_boot(x = dat2, p = 2, B = 50, setting = "p", type = "test", distr = "geo")
    spinar_boot(x = dat2, p = 2, B = 50, setting = "p", type = NA, distr = "geo")
    spinar_boot(x = dat2, p = NA, B = 50, setting = "p", distr = "nb")

  • #spinar_est
    spinar_est(x = dat2, p = NA)

  • #spinar_est_param
    dat1 <- spinar_sim(n = 200, p = 1, alpha = 0.5, pmf = dpois(0:20, 1))
    spinar_est_param(x = dat1, p = NA, type = "mom", distr = "poi")
    spinar_est_param(x = dat1, p = NA, type = "mom", distr = "geo")
    spinar_est_param(x = dat1, p = NA, type = "mom", distr = "nb")
    spinar_est_param(x = dat1, p = NA, type = "ml", distr = "poi")
    spinar_est_param(x = dat1, p = NA, type = "ml", distr = "geo")
    spinar_est_param(x = dat1, p = NA, type = "ml", distr = "nb")

  • #spinar_penal
    dat1 <- spinar_sim(n = 50, p = 1, alpha = 0.5, pmf = c(0.3, 0.25, 0.2, 0.15, 0.1))
    spinar_penal(x = dat1, p = NA, penal1 = 0, penal2 = 0)

  • #spinar_sim
    spinar_sim(n = 100, p = NA, alpha = .3, pmf = c(0.3, 0.3, 0.2, 0.1, 0.1))
    spinar_sim(n = 100, p = NA, alpha = c(0.2, 0.3), pmf = dpois(0:20,1))
    spinar_sim(n = NA, p = 2, alpha = c(0.2, 0.3), pmf = dpois(0:20,1))
    spinar_sim(n = 1, p = 2, alpha = c(0.2, 0.3), pmf = dpois(0:20,1), prerun=0)
    spinar_sim(n = 1, p = 2, alpha = c(0.2, 0.3), pmf = dpois(0:20,1), prerun=1)
    spinar_sim(n = 1, p = 2, alpha = c(0.2, 0.3), pmf = dpois(0:20,1), prerun=2)

  • #spinar_penal_val
    dat1 <- spinar_sim(n = 50, p = 1, alpha = 0.5, pmf = c(0.3, 0.3, 0.2, 0.1, 0.1))
    spinar_penal_val(x = dat1, p = 1, validation = NA)
    spinar_penal_val(x = dat1, p = 1, validation = NULL)
    spinar_penal_val(x = dat1, p = NA, validation = FALSE, penal1=0, penal2=0)

  1. Regarding software documentation, I suggest including a reproducible result from the literature for each provided functionality. For example, if not too computationally extensive, the spINAR results for Poi-INAR(1) or NB-INAR(1) from Table 1 or 2 in Jentsch and Weiß (2017) or a data set from a real-world application, like the iceberg stocks from Jung and Tremayne (2010), the Cascade-Turnoverdata or monthly demand of different car spare parts (time series of the car part 2404) from Snyder (2002) analyzed Faymonville et al. (2022). This would enable the user to validate the results from the R package with the published literature. If the reproducible examples are too extensive for the examples section of each documented function, you could provide them within a short vignette highlighting the functionality similar to the README.md of the GitHub repository. Related to this, you could also include a references section in the R documentation of each function.

Thanks for this valuable comment! The repository now includes the folder vignette which contains the file vignette.md providing reproduced results from the literature (with references) for each provided functionality of the spINAR package, see 40fcca6.

2. Regarding the software package functionality, I performed tests on the provided functions and found that for some parameters (settings might be artificial), a check needs to be included to intercept these incorrect entries.

Thanks for pointing out that some checks were missing! The respective functions now include checks for interception of these incorrect inputs, see 4691b30, 71f646e and a9de6f3.