skip_on_os(c("mac", "linux")) skip_if_not_installed("nestedLogit") skip_if_not_installed("carData") data("Womenlf", package = "carData") comparisons <- nestedLogit::logits( work = nestedLogit::dichotomy("not.work", working = c("parttime", "fulltime")), full = nestedLogit::dichotomy("parttime", "fulltime") ) mnl <- nestedLogit::nestedLogit( partic ~ hincome + children, dichotomies = comparisons, data = Womenlf ) test_that("r2", { out <- r2(mnl) expect_equal( out, list(R2_Tjur = list( work = c(`Tjur's R2` = 0.137759452521642), full = c(`Tjur's R2` = 0.332536937208286) )), ignore_attr = TRUE, tolerance = 1e-4 ) out <- r2_tjur(mnl) expect_equal( out, list( work = c(`Tjur's R2` = 0.137759452521642), full = c(`Tjur's R2` = 0.332536937208286) ), ignore_attr = TRUE, tolerance = 1e-4 ) out <- r2_coxsnell(mnl) expect_equal( out, list( work = c(`Cox & Snell's R2` = 0.129313084315599), full = c(`Cox & Snell's R2` = 0.308541455410686) ), ignore_attr = TRUE, tolerance = 1e-4 ) out <- r2_nagelkerke(mnl) expect_equal( out, list( work = c(`Nagelkerke's R2` = 0.174313365512442), full = c(`Nagelkerke's R2` = 0.418511411473948) ), ignore_attr = TRUE, tolerance = 1e-4 ) }) test_that("model_performance", { expect_snapshot(model_performance(mnl)) })