bbolker / broom.mixed

tidy methods for mixed models in R
229 stars 23 forks source link

feature request: supporting `glmm` class objects #57

Closed IndrajeetPatil closed 3 years ago

IndrajeetPatil commented 5 years ago

# setup
library(glmm)
#> Loading required package: trust
#> Loading required package: mvtnorm
#> Loading required package: Matrix
#> Loading required package: parallel
#> Loading required package: doParallel
#> Loading required package: foreach
#> Loading required package: iterators
set.seed(123)
data(salamander)
m <- 1000

# model
sal <-
  glmm::glmm(
    fixed = Mate ~ 0 + Cross,
    random = list( ~ 0 + Female,  ~ 0 + Male),
    varcomps.names = c("F", "M"),
    data = salamander,
    family.glmm = bernoulli.glmm,
    m = m,
    debug = TRUE
  )

# class of object
class(sal)
#> [1] "glmm"

# summary
summary(sal)
#> 
#> Call:
#> glmm::glmm(fixed = Mate ~ 0 + Cross, random = list(~0 + Female, 
#>     ~0 + Male), varcomps.names = c("F", "M"), data = salamander, 
#>     family.glmm = bernoulli.glmm, m = m, debug = TRUE)
#> 
#> 
#> Link is: "logit (log odds)"
#> 
#> Fixed Effects:
#>          Estimate Std. Error z value Pr(>|z|)    
#> CrossR/R   0.6735     0.2677   2.516   0.0119 *  
#> CrossR/W   0.3028     0.2508   1.207   0.2274    
#> CrossW/R  -1.9737     0.3204  -6.161 7.23e-10 ***
#> CrossW/W   1.4827     0.2775   5.343 9.16e-08 ***
#> ---
#> Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#> 
#> 
#> Variance Components for Random Effects (P-values are one-tailed):
#>   Estimate Std. Error z value Pr(>|z|)/2    
#> F   1.7645     0.3231   5.461   2.36e-08 ***
#> M   1.0712     0.1957   5.474   2.20e-08 ***
#> ---
#> Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

# confidence intervals
confint(sal)
#>               0.025     0.975
#> CrossR/R  0.1488888  1.198081
#> CrossR/W -0.1888597  0.794444
#> CrossW/R -2.6016263 -1.345835
#> CrossW/W  0.9387628  2.026598
#> F         1.1312734  2.397765
#> M         0.6876047  1.454707

# tidiers exists?
broom.mixed::tidy(sal)
#> Registered S3 methods overwritten by 'broom.mixed':
#>   method         from 
#>   augment.lme    broom
#>   augment.merMod broom
#>   glance.lme     broom
#>   glance.merMod  broom
#>   glance.stanreg broom
#>   tidy.brmsfit   broom
#>   tidy.gamlss    broom
#>   tidy.lme       broom
#>   tidy.merMod    broom
#>   tidy.rjags     broom
#>   tidy.stanfit   broom
#>   tidy.stanreg   broom
#> Error: No tidy method for objects of class glmm

Created on 2019-02-08 by the reprex package (v0.2.1)

Session info ``` r devtools::session_info() #> - Session info ---------------------------------------------------------- #> setting value #> version R Under development (unstable) (2018-11-30 r75724) #> os Windows 10 x64 #> system x86_64, mingw32 #> ui RTerm #> language (EN) #> collate English_United States.1252 #> ctype English_United States.1252 #> tz America/New_York #> date 2019-02-08 #> #> - Packages -------------------------------------------------------------- #> package * version date lib #> assertthat 0.2.0 2017-04-11 [1] #> backports 1.1.3 2018-12-14 [1] #> broom 0.5.1.9000 2019-01-20 [1] #> broom.mixed 0.2.3.9000 2019-01-23 [1] #> callr 3.1.1 2018-12-21 [1] #> cli 1.0.1.9000 2019-01-20 [1] #> coda 0.19-2 2018-10-08 [1] #> codetools 0.2-16 2018-12-24 [1] #> crayon 1.3.4 2017-09-16 [1] #> desc 1.2.0 2019-01-21 [1] #> devtools 2.0.1.9000 2019-01-29 [1] #> digest 0.6.18 2018-10-10 [1] #> doParallel * 1.0.14 2018-09-24 [1] #> dplyr 0.8.0 2019-02-06 [1] #> evaluate 0.12 2018-10-09 [1] #> foreach * 1.4.4 2017-12-12 [1] #> fs 1.2.6 2018-08-23 [1] #> generics 0.0.2 2019-01-20 [1] #> glmm * 1.3.0 2018-12-11 [1] #> glue 1.3.0 2018-07-17 [1] #> highr 0.7 2018-06-09 [1] #> htmltools 0.3.6 2017-04-28 [1] #> iterators * 1.0.10 2018-07-13 [1] #> itertools 0.1-3 2014-03-12 [1] #> knitr 1.21 2018-12-10 [1] #> lattice 0.20-38 2018-11-04 [2] #> magrittr 1.5 2014-11-22 [1] #> Matrix * 1.2-15 2018-11-01 [1] #> memoise 1.1.0 2017-04-21 [1] #> mvtnorm * 1.0-8 2018-05-31 [1] #> nlme 3.1-137 2018-04-07 [2] #> pillar 1.3.1 2018-12-15 [1] #> pkgbuild 1.0.2 2018-10-16 [1] #> pkgconfig 2.0.2 2018-08-16 [1] #> pkgload 1.0.2 2018-10-29 [1] #> plyr 1.8.4 2016-06-08 [1] #> prettyunits 1.0.2 2015-07-13 [1] #> processx 3.2.1 2018-12-05 [1] #> ps 1.3.0 2018-12-21 [1] #> purrr 0.3.0 2019-01-27 [1] #> R6 2.3.0 2018-10-04 [1] #> Rcpp 1.0.0 2018-11-07 [1] #> remotes 2.0.2 2018-10-30 [1] #> reshape2 1.4.3 2017-12-11 [1] #> rlang 0.3.1 2019-01-08 [1] #> rmarkdown 1.11 2018-12-08 [1] #> rprojroot 1.3-2 2018-01-03 [1] #> sessioninfo 1.1.1 2018-11-05 [1] #> stringi 1.2.4 2018-07-20 [1] #> stringr 1.3.1 2018-05-10 [1] #> testthat 2.0.1 2018-10-13 [1] #> tibble 2.0.1 2019-01-12 [1] #> tidyr 0.8.2 2018-10-28 [1] #> tidyselect 0.2.5 2018-10-11 [1] #> TMB 1.7.15 2018-11-09 [1] #> trust * 0.1-7 2015-07-04 [1] #> usethis 1.4.0.9000 2019-01-29 [1] #> withr 2.1.2 2018-03-15 [1] #> xfun 0.4 2018-10-23 [1] #> yaml 2.2.0 2018-07-25 [1] #> source #> CRAN (R 3.5.1) #> CRAN (R 3.6.0) #> Github (tidymodels/broom@66411c4) #> Github (bbolker/broom.mixed@fbe9597) #> CRAN (R 3.6.0) #> Github (r-lib/cli@94e2fc5) #> CRAN (R 3.5.1) #> CRAN (R 3.5.2) #> CRAN (R 3.5.1) #> Github (r-lib/desc@42b9578) #> Github (r-lib/devtools@e4e57aa) #> CRAN (R 3.5.1) #> CRAN (R 3.5.1) #> Github (tidyverse/dplyr@cf0e282) #> CRAN (R 3.5.1) #> CRAN (R 3.5.1) #> CRAN (R 3.5.1) #> Github (r-lib/generics@d59e6b4) #> CRAN (R 3.5.2) #> CRAN (R 3.5.1) #> CRAN (R 3.5.1) #> CRAN (R 3.5.1) #> CRAN (R 3.5.1) #> CRAN (R 3.5.2) #> CRAN (R 3.6.0) #> CRAN (R 3.6.0) #> CRAN (R 3.5.1) #> CRAN (R 3.5.1) #> CRAN (R 3.5.1) #> CRAN (R 3.5.0) #> CRAN (R 3.6.0) #> CRAN (R 3.6.0) #> CRAN (R 3.5.1) #> CRAN (R 3.5.1) #> CRAN (R 3.6.0) #> CRAN (R 3.5.1) #> CRAN (R 3.5.1) #> CRAN (R 3.6.0) #> CRAN (R 3.6.0) #> CRAN (R 3.5.2) #> CRAN (R 3.5.1) #> CRAN (R 3.6.0) #> CRAN (R 3.6.0) #> CRAN (R 3.5.1) #> CRAN (R 3.6.0) #> CRAN (R 3.6.0) #> CRAN (R 3.5.1) #> CRAN (R 3.6.0) #> CRAN (R 3.6.0) #> CRAN (R 3.5.1) #> CRAN (R 3.5.1) #> CRAN (R 3.6.0) #> CRAN (R 3.6.0) #> CRAN (R 3.5.1) #> CRAN (R 3.6.0) #> CRAN (R 3.5.2) #> Github (r-lib/usethis@5a0680b) #> CRAN (R 3.5.1) #> CRAN (R 3.6.0) #> CRAN (R 3.5.1) #> #> [1] C:/Users/inp099/Documents/R/win-library/3.6 #> [2] C:/Program Files/R/R-devel/library ```
IndrajeetPatil commented 3 years ago

Closing because this is supported in parameters, and so tidied output can be extracted via broomExtra::tidy_parameters().