Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Support for Additional Model Classes #1

Open
53 of 87 tasks
leeper opened this issue Oct 30, 2016 · 2 comments
Open
53 of 87 tasks

Add Support for Additional Model Classes #1

leeper opened this issue Oct 30, 2016 · 2 comments

Comments

@leeper
Copy link
Owner

leeper commented Oct 30, 2016

This is a list of requested model classes to potentially support in prediction. It is sorted by completion status of model support, and then by function name. In order to support a model class, the package needs to provide a predict() method. If this is not provided, it is not (presently) supportable.

Supported

  • arm::bayesglm() (inherits from "glm")
  • aod::betabin(), aod::negbin(), aod::quasibin(), aod::quasipois(),
  • betareg::betareg() (class "betareg"), with predict() method (but no se.fit arg)
  • biglm::biglm() and biglm::bigglm()
  • brglm::brglm() (inherits from "glm")
  • mda::bruto()
  • ordinal::clm()
  • crch censored/truncated regression methods (Support for crch package #4)
  • earth::earth()
  • mda::fda()
  • gam::gam()
  • kernlab::gausspr()
  • gee::gee()
  • stats::glm()
  • glmnet::glmnet()
  • glmx::glmx() (class "glmx")
  • MASS::glm.nb() (inherits from "glm")
  • glmx::hetglm() (class "hetglm")
  • pscl::hurdle()
  • AER::ivreg()
  • caret::knnreg()
  • kernlab::kqr()
  • kernlab::ksvm()
  • MASS::lda()
  • stats::lm()
  • lme4 (lmer(), glmer(), ...) (but lme4:::predict.merMod() has no se.fit argument)
  • nlme
    • nlme:::predict.lme() has no se.fit or type arguments
    • nlme:::predict.gls() has no se.fit argument.
  • stats::loess() (predict() method uses se rather than se.fit)
  • MASS::lqs()
  • mda::mars()
  • MASS::mca()
  • mclogit::mclogit() (class "mclogit"), which is basically "glm"
  • mda::mda()
  • mlogit::mlogit()
  • mnlogit::mnlogit()
  • MNP::mnp()
  • nnet::multinom() or any nnet model generally
  • e1071::naiveBayes()
  • nls (requires setting model = TRUE in original call; and then getting term(object[["model"]]))
  • MASS::polr() (has predict() method with type = c("class", "probs"))
    • arm::bayespolr() (covered by general "polr" method)
  • mda::polyreg()
  • caret::predict()
  • MASS::qda()
  • quantreg::rq()
  • rpart::rpart()
  • sampleSelection::selection() (class "select")
  • speedglm::speedglm() and speedglm::speedlm()
  • survival::survreg()
    • coxph class has different type values for predict(): c("lp", "risk", "expected")
  • survey::svyglm()
  • AER::tobit()
  • truncreg::truncreg()
  • pscl::zeroinfl()

Potentially supportable

  • bamlss::bamlss()
  • dynlm::dynlm()
  • gnm::gnm()
  • LARF::larf()
  • bbmle::mle2()
  • mpt::mpt()
  • np (non-parametric regression)
  • rms
  • "stanreg" objects from rstanarm
  • VGAM::vglm()
  • mgcv::bam()
  • mgcv::gam()
  • gamlss::gamlss()
  • mgcv::gamm()
  • VGAM::vgam()
  • spdep
  • sphet::spreg()
  • splm::spml()
  • splm::spgm()

Not currently supportable

  • censReg (has a margEff() generic but no predict() method)
  • ordinal::clmm() (no predict() method)
  • lfe::felm() (no predict() method)
  • dispmod: lm.disp(), glm.binomial.disp(), glm.poisson.disp() (no predict() method)
  • geepack: geeglm(), geese(), ordgee() (no predict() methods)
  • ghyp (ORPHANED)
  • gmm::gmm() (no predict() method)
  • gmnl::gmnl() (no predict() method)
  • GeneralizedHyperbolic::hyperblm() (no predict() method)
  • ivprobit::ivprobit() (no predict() method)
  • class::knn() (does not construct a model object)
  • sem::tsls() (no predict() method)
  • plm::plm() (non-exported predict method)
  • plm::pglm()
  • survey::svyolr() (no predict() method)

(Note: this is migrated from: leeper/margins#3)

leeper added a commit that referenced this issue Nov 3, 2016
leeper added a commit that referenced this issue Nov 3, 2016
leeper added a commit that referenced this issue Nov 11, 2016
leeper added a commit that referenced this issue Nov 13, 2016
leeper added a commit that referenced this issue Nov 18, 2016
leeper added a commit that referenced this issue Feb 9, 2017
leeper added a commit that referenced this issue Feb 9, 2017
leeper added a commit that referenced this issue Feb 9, 2017
leeper added a commit that referenced this issue Feb 14, 2017
leeper added a commit that referenced this issue Feb 14, 2017
leeper added a commit that referenced this issue Mar 24, 2017
leeper added a commit that referenced this issue Mar 27, 2017
leeper added a commit that referenced this issue Mar 27, 2017
leeper added a commit that referenced this issue Mar 27, 2017
leeper added a commit that referenced this issue Mar 27, 2017
leeper added a commit that referenced this issue Mar 27, 2017
leeper added a commit that referenced this issue Mar 27, 2017
leeper added a commit that referenced this issue Mar 27, 2017
leeper added a commit that referenced this issue Mar 27, 2017
leeper added a commit that referenced this issue Mar 27, 2017
leeper added a commit that referenced this issue Mar 27, 2017
leeper added a commit that referenced this issue Mar 27, 2017
leeper added a commit that referenced this issue Mar 30, 2017
leeper added a commit that referenced this issue Mar 30, 2017
leeper added a commit that referenced this issue Mar 30, 2017
leeper added a commit that referenced this issue Mar 30, 2017
leeper added a commit that referenced this issue Mar 30, 2017
@bgall
Copy link

bgall commented May 25, 2017

@leeper I'd add the other survey package functions. While many of them are based on survey::svyglm() which are class glm, lm, and svyglm, the survey::svyolr() function is NOT from MASS::polr() and is of class svyolr.

leeper added a commit that referenced this issue Feb 2, 2018
leeper added a commit that referenced this issue Mar 17, 2018
leeper added a commit that referenced this issue Mar 17, 2018
leeper added a commit that referenced this issue Mar 19, 2018
leeper added a commit that referenced this issue Mar 19, 2018
leeper added a commit that referenced this issue May 14, 2018
@leeper leeper changed the title Support non-base modelling functions Add Support for Additional Model Classes Jul 22, 2018
@leeper leeper mentioned this issue Aug 1, 2018
@tappek
Copy link

tappek commented Aug 19, 2022

For models produced by plm::plm(), there is a predict method available since plm version 2.6-2.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants