Giter VIP home page Giter VIP logo

spinar's People

Contributors

jariffo avatar jonasrieger avatar mfaymon avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

jariffo

spinar's Issues

Review

Hi there,

I reviewed your package/paper and genuinely enjoyed learning about the topic and testing the package. There are a few comments and questions, I'd like to address regarding my review checklist:

  • Scholarly effort: The package is probably flagged for inspection by the editors due to <1000 LOC (according to codecov), but I see the effort in structuring the package and the rather complex theory. However, I was wondering if there had been previous work you relied on? I.e an implementation of methods by Carsten Jentsch and Christian Weiß from their 2019 paper on the Bootstrap procedure? Or am implementation by Drost et al.?

  • Performance: You state (around line 48 of the paper) that your main contribution is the efficient semiparametric estimation. It is not clear to me whether "efficient" refers to the properties of the estimators or the implementation of estimation.

  • Statement of Need: In my opinion the SoN in your paper and/or documentation would greatly benefit if you mentioned an application example. Did other authors maybe even discuss an application in which the semiparametric estimation is superior to a parametric approach (as that's your focus)?

  • Statement of Need / State of field: You mentioned that INAR processes are "clearly the most popular" among observation-driven count data models (around line 11 of the paper). On what basis do you make the statement? And related question: Is there actually no implementation in R dealing with INAR models, at least for parametric estimation? That would be in contrast with above popularity statement, wouldn't it? For example the tscount package has been applied and cited quite a few times.

  • Community guidelines: JOSS suggests to give the target audience information on how to contribute and how to get support. I think it would be a great idea to include a note in your Repo.

  • Outlook: I am very curious about how the package will develop in the future. If you have any plans, maybe you could list them in the Repo's readme. My suggestion would be to cover INAR(p) processes or arbitrary order by implementing a general likelihood function and leave the choice to the users.

Looking forward to hearing from you.
All the best and keep up the good work!

Review

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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.