library(DectechR)
context("test runUnivariate()")
#---- [1] testing lm ------------------------
test_that("runUnivariate() gives an error when nothing sent", {
expect_error(runUnivariate())
})
test_that("runUnivariate() on a simple linear regression", {
m1 = lm(mpg ~ gear + carb + hp, mtcars)
u1 = runUnivariate(m1)
expect_identical(u1$IV, c("gear","carb","hp"))
expect_equal(u1$Beta, c(3.92333333, -2.05571870, -0.06822828))
expect_equal(u1$`Pr(>|t|)`, c(5.400948e-03, 1.084446e-03, 1.787835e-07))
expect_identical(u1$`(Intercept)`, NULL)
u2 = runUnivariate(m1,returnIntercept = T)
expect_identical(u2$IV, c("gear","carb","hp"))
expect_equal(u2$Beta, c(3.92333333, -2.05571870, -0.06822828))
expect_equal(u2$`Pr(>|t|)`, c(5.400948e-03, 1.084446e-03, 1.787835e-07))
expect_equal(u2$`(Intercept)`, c(5.6233333, 25.872334, 30.098861))
})
test_that("runUnivariate() on a lm() with factor var", {
# check how it handles factor variables...
mtcars2 = mtcars
mtcars2$carb_factor = factor(mtcars2$carb)
m1 = lm(mpg ~ gear + carb_factor + hp, mtcars2)
u1 = runUnivariate(m1)
expect_identical(u1$IV, c("gear","carb_factor2","carb_factor3","carb_factor4","carb_factor6","carb_factor8","hp"))
expect_equal(u1$Beta, c(3.92333333333333, -2.94285714285714, -9.04285714285715, -9.55285714285715, -5.64285714285714, -10.3428571428571, -0.0682282780715636))
expect_equal(u1$`Pr(>|t|)`, c(0.00540094822470767, 0.234346327455179, 0.0128499280141855, 0.000529547727433719, 0.291736245223966, 0.0592726905726684, 1.78783525412108e-07))
expect_identical(u1$`(Intercept)`, NULL)
#... with the intercept included....
u2 = runUnivariate(m1,returnIntercept = T)
expect_identical(u2$IV, c("gear","carb_factor2","carb_factor3","carb_factor4","carb_factor6","carb_factor8","hp"))
expect_equal(u2$Beta, c(3.92333333333333, -2.94285714285714, -9.04285714285715, -9.55285714285715, -5.64285714285714, -10.3428571428571, -0.0682282780715636))
expect_equal(u2$`Pr(>|t|)`, c(0.00540094822470767, 0.234346327455179, 0.0128499280141855, 0.000529547727433719, 0.291736245223966, 0.0592726905726684, 1.78783525412108e-07))
expect_identical(u2$`(Intercept)`, c(5.62333333333333, 25.3428571428571, 25.3428571428571, 25.3428571428571, 25.3428571428571, 25.3428571428571, 30.0988605396225))
})
test_that("runUnivariate() on a lm() with factor var declared in line", {
# check how it handles factor variables...
m1 = lm(mpg ~ gear + factor(carb) + hp, mtcars)
u1 = runUnivariate(m1)
expect_identical(u1$IV, c("gear","factor(carb)2","factor(carb)3","factor(carb)4","factor(carb)6","factor(carb)8","hp"))
expect_equal(u1$Beta, c(3.92333333333333, -2.94285714285714, -9.04285714285715, -9.55285714285715, -5.64285714285714, -10.3428571428571, -0.0682282780715636))
expect_equal(u1$`Pr(>|t|)`, c(0.00540094822470767, 0.234346327455179, 0.0128499280141855, 0.000529547727433719, 0.291736245223966, 0.0592726905726684, 1.78783525412108e-07))
expect_identical(u1$`(Intercept)`, NULL)
#... with the intercept included....
u2 = runUnivariate(m1,returnIntercept = T)
expect_identical(u2$IV, c("gear","factor(carb)2","factor(carb)3","factor(carb)4","factor(carb)6","factor(carb)8","hp"))
expect_equal(u2$Beta, c(3.92333333333333, -2.94285714285714, -9.04285714285715, -9.55285714285715, -5.64285714285714, -10.3428571428571, -0.0682282780715636))
expect_equal(u2$`Pr(>|t|)`, c(0.00540094822470767, 0.234346327455179, 0.0128499280141855, 0.000529547727433719, 0.291736245223966, 0.0592726905726684, 1.78783525412108e-07))
expect_identical(u2$`(Intercept)`, c(5.62333333333333, 25.3428571428571, 25.3428571428571, 25.3428571428571, 25.3428571428571, 25.3428571428571, 30.0988605396225))
})
test_that("getUnivariate() on a linear regression", {
m1 = lm(mpg ~ gear + carb + hp, mtcars)
getUnivariate(m1)
ccContents = readClipboard()
expect_identical(ccContents[2], "\"Dep. Var.\"\t\"mpg\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[3], "\"Model\"\t\"Linear (lm)\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[4], "\"N\"\t\"32\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[5+1], "\"\"\t\"Beta\"\t\"Std. Error\"\t\"t value\"\t\"Pr(>|t|)\"")
expect_identical(ccContents[5+2], "\"gear\"\t\" 3.92333333\"\t\"1.3081307\"\t\" 2.999191\"\t\"5.400948e-03\"")
expect_identical(ccContents[5+3], "\"carb\"\t\"-2.05571870\"\t\"0.5685456\"\t\"-3.615750\"\t\"1.084446e-03\"")
expect_identical(ccContents[5+4],"\"hp\"\t\"-0.06822828\"\t\"0.0101193\"\t\"-6.742389\"\t\"1.787835e-07\"")
getUnivariate(m1,returnIntercept = T)
ccContents = readClipboard()
expect_identical(ccContents[2], "\"Dep. Var.\"\t\"mpg\"\t\"\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[3], "\"Model\"\t\"Linear (lm)\"\t\"\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[4], "\"N\"\t\"32\"\t\"\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[5+1], "\"\"\t\"(Intercept)\"\t\"Beta\"\t\"Std. Error\"\t\"t value\"\t\"Pr(>|t|)\"")
expect_identical(ccContents[5+2], "\"gear\"\t\" 5.623333\"\t\" 3.92333333\"\t\"1.3081307\"\t\" 2.999191\"\t\"5.400948e-03\"")
expect_identical(ccContents[5+3], "\"carb\"\t\"25.872334\"\t\"-2.05571870\"\t\"0.5685456\"\t\"-3.615750\"\t\"1.084446e-03\"")
expect_identical(ccContents[5+4], "\"hp\"\t\"30.098861\"\t\"-0.06822828\"\t\"0.0101193\"\t\"-6.742389\"\t\"1.787835e-07\"")
})
test_that("getUnivariate() on lm with formula", {
this_formula = mpg ~ gear + carb + hp
#m1 = lm(mpg ~ gear + carb + hp, mtcars)
getUnivariate(full_formula = this_formula,
df = mtcars, model_class = "lm")
ccContents = readClipboard()
expect_identical(ccContents[2], "\"Dep. Var.\"\t\"mpg\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[3], "\"Model\"\t\"Linear (lm)\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[4], "\"N\"\t\"32\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[5+1], "\"\"\t\"Beta\"\t\"Std. Error\"\t\"t value\"\t\"Pr(>|t|)\"")
expect_identical(ccContents[5+2], "\"gear\"\t\" 3.92333333\"\t\"1.3081307\"\t\" 2.999191\"\t\"5.400948e-03\"")
expect_identical(ccContents[5+3], "\"carb\"\t\"-2.05571870\"\t\"0.5685456\"\t\"-3.615750\"\t\"1.084446e-03\"")
expect_identical(ccContents[5+4],"\"hp\"\t\"-0.06822828\"\t\"0.0101193\"\t\"-6.742389\"\t\"1.787835e-07\"")
getUnivariate(full_formula = this_formula,
df = mtcars, model_class = "lm",
returnIntercept = T)
ccContents = readClipboard()
expect_identical(ccContents[2], "\"Dep. Var.\"\t\"mpg\"\t\"\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[3], "\"Model\"\t\"Linear (lm)\"\t\"\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[4], "\"N\"\t\"32\"\t\"\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[5+1], "\"\"\t\"(Intercept)\"\t\"Beta\"\t\"Std. Error\"\t\"t value\"\t\"Pr(>|t|)\"")
expect_identical(ccContents[5+2], "\"gear\"\t\" 5.623333\"\t\" 3.92333333\"\t\"1.3081307\"\t\" 2.999191\"\t\"5.400948e-03\"")
expect_identical(ccContents[5+3], "\"carb\"\t\"25.872334\"\t\"-2.05571870\"\t\"0.5685456\"\t\"-3.615750\"\t\"1.084446e-03\"")
expect_identical(ccContents[5+4], "\"hp\"\t\"30.098861\"\t\"-0.06822828\"\t\"0.0101193\"\t\"-6.742389\"\t\"1.787835e-07\"")
})
#---- [2] testing glm ------------------------
test_that("runUnivariate() on a simple binary logit regression, glm()", {
mtcars2 = mtcars
mtcars2$mpg_20 = (mtcars2$mpg > 20)*1
ml1 = glm(mpg_20 ~ gear + carb + disp, mtcars2, family = "binomial")
u1 = runUnivariate(ml1)
## paste0(u1$Beta, collapse = ", ")
## paste0(u1$`Pr(>|t|)`, collapse = ", ")
## paste0(u2$`(Intercept)`, collapse = ", ")
expect_identical(u1$IV, c("gear","carb","disp"))
expect_equal(u1$Beta, c(1.14354382624539, -1.12294815882692, -0.0308400870797587))
expect_equal(u1$`Pr(>|z|)`, c(0.0422395979083261, 0.00640050430527483, 0.0055543185620774))
expect_identical(u1$`(Intercept)`, NULL)
u2 = runUnivariate(ml1,returnIntercept = T)
expect_identical(u2$IV, c("gear","carb","disp"))
expect_equal(u2$Beta, c(1.14354382624539, -1.12294815882692, -0.0308400870797587))
expect_equal(u2$`Pr(>|z|)`, c(0.0422395979083261, 0.00640050430527483, 0.0055543185620774))
expect_equal(u2$`(Intercept)`, c(-4.48716959736612, 2.62780191265262, 5.74156215209908))
})
test_that("runUnivariate() on a glm() with factor var", {
mtcars2 = mtcars
mtcars2$mpg_20 = (mtcars2$mpg > 20)*1
mtcars2$carb_factor = factor(mtcars2$carb)
ml1 = glm(mpg_20 ~ gear + carb_factor + disp, mtcars2, family = "binomial")
u1 = runUnivariate(ml1)
expect_identical(u1$IV, c("gear", "carb_factor2", "carb_factor3", "carb_factor4", "carb_factor6", "carb_factor8", "disp"))
expect_equal(u1$Beta, c(1.14354382624539, -1.38629436111989, -20.3578279790962, -3.17805383034795, -20.3578279790898, -20.3578279790972, -0.0308400870797587))
expect_equal(u1$`Pr(>|z|)`, c(0.0422395979083261, 0.270585575135868, 0.995686729653739, 0.0175830266863531, 0.997509724050083, 0.997509724050099, 0.0055543185620774))
expect_identical(u1$`(Intercept)`, NULL)
u2 = runUnivariate(ml1,returnIntercept = T)
expect_identical(u2$IV, c("gear", "carb_factor2", "carb_factor3", "carb_factor4", "carb_factor6", "carb_factor8", "disp"))
expect_equal(u2$Beta, c(1.14354382624539, -1.38629436111989, -20.3578279790962, -3.17805383034795, -20.3578279790898, -20.3578279790972, -0.0308400870797587))
expect_equal(u2$`Pr(>|z|)`, c(0.0422395979083261, 0.270585575135868, 0.995686729653739, 0.0175830266863531, 0.997509724050083, 0.997509724050099, 0.0055543185620774))
expect_equal(u2$`(Intercept)`, c(-4.48716959736612, 1.79175946922806, 1.79175946922806, 1.79175946922806, 1.79175946922806, 1.79175946922806, 5.74156215209908))
})
test_that("runUnivariate() on a glm() with factor var declared in line", {
mtcars2 = mtcars
mtcars2$mpg_20 = (mtcars2$mpg > 20)*1
ml1 = glm(mpg_20 ~ gear + factor(carb) + disp, mtcars2, family = "binomial")
u1 = runUnivariate(ml1)
expect_identical(u1$IV, c("gear", "factor(carb)2", "factor(carb)3", "factor(carb)4", "factor(carb)6", "factor(carb)8", "disp"))
expect_equal(u1$Beta, c(1.14354382624539, -1.38629436111989, -20.3578279790962, -3.17805383034795, -20.3578279790898, -20.3578279790972, -0.0308400870797587))
expect_equal(u1$`Pr(>|z|)`, c(0.0422395979083261, 0.270585575135868, 0.995686729653739, 0.0175830266863531, 0.997509724050083, 0.997509724050099, 0.0055543185620774))
expect_identical(u1$`(Intercept)`, NULL)
u2 = runUnivariate(ml1,returnIntercept = T)
expect_identical(u2$IV, c("gear", "factor(carb)2", "factor(carb)3", "factor(carb)4", "factor(carb)6", "factor(carb)8", "disp"))
expect_equal(u2$Beta, c(1.14354382624539, -1.38629436111989, -20.3578279790962, -3.17805383034795, -20.3578279790898, -20.3578279790972, -0.0308400870797587))
expect_equal(u2$`Pr(>|z|)`, c(0.0422395979083261, 0.270585575135868, 0.995686729653739, 0.0175830266863531, 0.997509724050083, 0.997509724050099, 0.0055543185620774))
expect_equal(u2$`(Intercept)`, c(-4.48716959736612, 1.79175946922806, 1.79175946922806, 1.79175946922806, 1.79175946922806, 1.79175946922806, 5.74156215209908))
})
test_that("getUnivariate() on a glm, binary logit", {
mtcars2 = mtcars
mtcars2$mpg_20 = (mtcars2$mpg > 20)*1
ml1 = glm(mpg_20 ~ gear + carb + disp, mtcars2, family = "binomial")
getUnivariate(ml1)
ccContents = readClipboard()
expect_identical(ccContents[2], "\"Dep. Var.\"\t\"mpg_20\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[3], "\"Model\"\t\"binomial (glm)\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[4], "\"N\"\t\"32\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[5+1], "\"\"\t\"Beta\"\t\"Std. Error\"\t\"z value\"\t\"Pr(>|z|)\"")
expect_identical(ccContents[5+2], "\"gear\"\t\" 1.14354383\"\t\"0.56300264\"\t\" 2.031152\"\t\"0.042239598\"")
expect_identical(ccContents[5+3], "\"carb\"\t\"-1.12294816\"\t\"0.41186053\"\t\"-2.726525\"\t\"0.006400504\"")
expect_identical(ccContents[5+4],"\"disp\"\t\"-0.03084009\"\t\"0.01112159\"\t\"-2.772994\"\t\"0.005554319\"")
getUnivariate(ml1,returnIntercept = T)
ccContents = readClipboard()
expect_identical(ccContents[2], "\"Dep. Var.\"\t\"mpg_20\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[3], "\"Model\"\t\"binomial (glm)\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[4], "\"N\"\t\"32\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[5+1], "\"\"\t\"Beta\"\t\"Std. Error\"\t\"z value\"\t\"Pr(>|z|)\"")
expect_identical(ccContents[5+2], "\"gear\"\t\" 1.14354383\"\t\"0.56300264\"\t\" 2.031152\"\t\"0.042239598\"")
expect_identical(ccContents[5+3], "\"carb\"\t\"-1.12294816\"\t\"0.41186053\"\t\"-2.726525\"\t\"0.006400504\"")
expect_identical(ccContents[5+4], "\"disp\"\t\"-0.03084009\"\t\"0.01112159\"\t\"-2.772994\"\t\"0.005554319\"")
})
test_that("getUnivariate() on a glm with formula", {
mtcars2 = mtcars
mtcars2$mpg_20 = (mtcars2$mpg > 20)*1
this_formula = mpg_20 ~ gear + carb + disp
getUnivariate(full_formula = this_formula,
df = mtcars2, model_class = "glm",model_family = "binomial")
ccContents = readClipboard()
expect_identical(ccContents[2], "\"Dep. Var.\"\t\"mpg_20\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[3], "\"Model\"\t\"binomial (glm)\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[4], "\"N\"\t\"32\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[5+1], "\"\"\t\"Beta\"\t\"Std. Error\"\t\"z value\"\t\"Pr(>|z|)\"")
expect_identical(ccContents[5+2], "\"gear\"\t\" 1.14354383\"\t\"0.56300264\"\t\" 2.031152\"\t\"0.042239598\"")
expect_identical(ccContents[5+3], "\"carb\"\t\"-1.12294816\"\t\"0.41186053\"\t\"-2.726525\"\t\"0.006400504\"")
expect_identical(ccContents[5+4],"\"disp\"\t\"-0.03084009\"\t\"0.01112159\"\t\"-2.772994\"\t\"0.005554319\"")
getUnivariate(full_formula = this_formula,
df = mtcars2, model_class = "glm",model_family = "binomial",
returnIntercept = T)
ccContents = readClipboard()
expect_identical(ccContents[2], "\"Dep. Var.\"\t\"mpg_20\"\t\"\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[3], "\"Model\"\t\"binomial (glm)\"\t\"\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[4], "\"N\"\t\"32\"\t\"\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[5+1], "\"\"\t\"(Intercept)\"\t\"Beta\"\t\"Std. Error\"\t\"z value\"\t\"Pr(>|z|)\"")
expect_identical(ccContents[5+2], "\"gear\"\t\"-4.487170\"\t\" 1.14354383\"\t\"0.56300264\"\t\" 2.031152\"\t\"0.042239598\"")
expect_identical(ccContents[5+3], "\"carb\"\t\" 2.627802\"\t\"-1.12294816\"\t\"0.41186053\"\t\"-2.726525\"\t\"0.006400504\"")
expect_identical(ccContents[5+4], "\"disp\"\t\" 5.741562\"\t\"-0.03084009\"\t\"0.01112159\"\t\"-2.772994\"\t\"0.005554319\"")
})
#---- [3] testing polr ------------------------
test_that("runUnivariate() on a simple ordinal logit regression, polr()", {
library(MASS)
set.seed(123);
df1 = as.data.frame(matrix(rnorm(1000*3),1000,3))
df1$Y = 3*df1$V1 + 0.5*df1$V2 - df1$V3 + rnorm(1000)
df1$Y_bin = cut(df1$Y,breaks = quantile(df1$Y,c(0,0.333,0.667,1)),include.lowest = T)
ol1 = MASS::polr(Y_bin ~ V1 + V2 + V3, df1)
u1 = runUnivariate(ol1)
expect_identical(u1$IV, c("V1","V2","V3"))
expect_equal(u1$Beta, c(3.54926206270649, 0.357406117502969, -0.542805602449396))
expect_equal(u1$`p value`, c(1.21785966391788e-94, 1.59227282826942e-09, 9.40244493102174e-18))
expect_equal(u1$`[-10.8,-1.35]|(-1.35,1.39]`, NULL)
expect_equal(u1$`(-1.35,1.39]|(1.39,10.2]`, NULL)
u2 = runUnivariate(ol1,returnIntercept = T)
expect_identical(u2$IV, c("V1","V2","V3"))
expect_equal(u2$Beta, c(3.54926206270649, 0.357406117502969, -0.542805602449396))
expect_equal(u2$`p value`, c(1.21785966391788e-94, 1.59227282826942e-09, 9.40244493102174e-18))
expect_equal(u2$`[-10.8,-1.35]|(-1.35,1.39]`, c(-1.62346998988311, -0.703315115838237, -0.737033435488431))
expect_equal(u2$`(-1.35,1.39]|(1.39,10.2]`, c(1.71449585518792, 0.728721708424453, 0.741271958265798
))
})
test_that("runUnivariate() on a polr() with factor var", {
library(MASS)
set.seed(123);
df1 = as.data.frame(matrix(rnorm(1000*3),1000,3))
df1$Y = 3*df1$V1 + 0.5*df1$V2 - df1$V3 + rnorm(1000)
df1$Y_bin = cut(df1$Y,breaks = quantile(df1$Y,c(0,0.333,0.667,1)),include.lowest = T)
df1$V3_bin = cut(df1$V3, quantile(df1$V3, c(0,0.333,0.667,1)),include.lowest = T)
ol1 = MASS::polr(Y_bin ~ V1 + V2 + V3_bin, df1)
u1 = runUnivariate(ol1)
## writeClipboard(paste0(u1$IV, collapse = "\", \""))
## writeClipboard(paste0(u1$Beta, collapse = ", "))
## writeClipboard(paste0(u1$`Pr(>|t|)`, collapse = ", "))
## writeClipboard(paste0(u2$`[-10.8,-1.35]|(-1.35,1.39]`, collapse = ", "))
## writeClipboard(paste0(u2$`(-1.35,1.39]|(1.39,10.2]`, collapse = ", "))
expect_identical(u1$IV, c("V1", "V2", "V3_bin(-0.466,0.391]", "V3_bin(0.391,3.42]"))
expect_equal(u1$Beta, c(3.54926206270649, 0.357406117502969, -0.56403488387254, -1.08900722281179))
expect_equal(u1$`p value`, c(1.21785966391788e-94, 1.59227282826942e-09, 9.71742704528518e-05, 1.13799741435731e-13))
expect_identical(u1$`[-10.8,-1.35]|(-1.35,1.39]`, NULL)
expect_identical(u1$`(-1.35,1.39]|(1.39,10.2]`, NULL)
u2 = runUnivariate(ol1,returnIntercept = T)
expect_identical(u2$IV, c("V1", "V2", "V3_bin(-0.466,0.391]", "V3_bin(0.391,3.42]"))
expect_equal(u2$Beta, c(3.54926206270649, 0.357406117502969, -0.56403488387254, -1.08900722281179))
expect_equal(u2$`p value`, c(1.21785966391788e-94, 1.59227282826942e-09, 9.71742704528518e-05, 1.13799741435731e-13))
expect_equal(u2$`[-10.8,-1.35]|(-1.35,1.39]`, c(-1.62346998988311, -0.703315115838237, -1.28476323803524, -1.28476323803524))
expect_equal(u2$`(-1.35,1.39]|(1.39,10.2]`, c(1.71449585518792, 0.728721708424453, 0.170377819294584, 0.170377819294584
))
})
test_that("runUnivariate() on a polr() with a formula input", {
library(MASS)
set.seed(123);
df1 = as.data.frame(matrix(rnorm(1000*3),1000,3))
df1$Y = 3*df1$V1 + 0.5*df1$V2 - df1$V3 + rnorm(1000)
df1$Y_bin = cut(df1$Y,breaks = quantile(df1$Y,c(0,0.333,0.667,1)),include.lowest = T)
this_formula = as.formula(Y_bin ~ V1 + V2 + V3)
#ol1 = MASS::polr(Y_bin ~ V1 + V2 + V3, df1)
u1 = runUnivariate.polr(full_formula = this_formula, df = df1)
expect_identical(u1$IV, c("V1","V2","V3"))
expect_equal(u1$Beta, c(3.54926206270649, 0.357406117502969, -0.542805602449396))
expect_equal(u1$`p value`, c(1.21785966391788e-94, 1.59227282826942e-09, 9.40244493102174e-18))
expect_equal(u1$`[-10.8,-1.35]|(-1.35,1.39]`, NULL)
expect_equal(u1$`(-1.35,1.39]|(1.39,10.2]`, NULL)
})
test_that("getUnivariate() on polr", {
library(MASS)
set.seed(123);
df1 = as.data.frame(matrix(rnorm(1000*3),1000,3))
df1$Y = 3*df1$V1 + 0.5*df1$V2 - df1$V3 + rnorm(1000)
df1$Y_bin = cut(df1$Y,breaks = quantile(df1$Y,c(0,0.333,0.667,1)),include.lowest = T)
ol1 = MASS::polr(Y_bin ~ V1 + V2 + V3, df1)
getUnivariate(ol1)
ccContents = readClipboard()
expect_identical(ccContents[2], "\"Dep. Var.\"\t\"Y_bin\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[3], "\"Model\"\t\"Ordinal Logit (polr)\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[4], "\"N\"\t\"1000\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[5+1], "\"\"\t\"Beta\"\t\"Std. Error\"\t\"t value\"\t\"p value\"")
expect_identical(ccContents[5+2], "\"V1\"\t\" 3.5492621\"\t\"0.17196611\"\t\"20.639311\"\t\"1.217860e-94\"")
expect_identical(ccContents[5+3], "\"V2\"\t\" 0.3574061\"\t\"0.05922486\"\t\" 6.034731\"\t\"1.592273e-09\"")
expect_identical(ccContents[5+4],"\"V3\"\t\"-0.5428056\"\t\"0.06325644\"\t\"-8.581034\"\t\"9.402445e-18\"")
getUnivariate(ol1,returnIntercept = T)
ccContents = readClipboard()
expect_identical(ccContents[2], "\"Dep. Var.\"\t\"Y_bin\"\t\"\"\t\"\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[3], "\"Model\"\t\"Ordinal Logit (polr)\"\t\"\"\t\"\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[4], "\"N\"\t\"1000\"\t\"\"\t\"\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[5+1], "\"\"\t\"[-10.8,-1.35]|(-1.35,1.39]\"\t\"(-1.35,1.39]|(1.39,10.2]\"\t\"Beta\"\t\"Std. Error\"\t\"t value\"\t\"p value\"")
expect_identical(ccContents[5+2], "\"V1\"\t\"-1.6234700\"\t\"1.7144959\"\t\" 3.5492621\"\t\"0.17196611\"\t\"20.639311\"\t\"1.217860e-94\"")
expect_identical(ccContents[5+3], "\"V2\"\t\"-0.7033151\"\t\"0.7287217\"\t\" 0.3574061\"\t\"0.05922486\"\t\" 6.034731\"\t\"1.592273e-09\"")
expect_identical(ccContents[5+4], "\"V3\"\t\"-0.7370334\"\t\"0.7412720\"\t\"-0.5428056\"\t\"0.06325644\"\t\"-8.581034\"\t\"9.402445e-18\"")
})
test_that("getUnivariate() on polr with formula", {
library(MASS)
set.seed(123);
df1 = as.data.frame(matrix(rnorm(1000*3),1000,3))
df1$Y = 3*df1$V1 + 0.5*df1$V2 - df1$V3 + rnorm(1000)
df1$Y_bin = cut(df1$Y,breaks = quantile(df1$Y,c(0,0.333,0.667,1)),include.lowest = T)
this_formula = Y_bin ~ V1 + V2 + V3
#ol1 = MASS::polr(Y_bin ~ V1 + V2 + V3, df1)
getUnivariate(full_formula = this_formula,
df = df1, model_class = "polr")
ccContents = readClipboard()
expect_identical(ccContents[2], "\"Dep. Var.\"\t\"Y_bin\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[3], "\"Model\"\t\"Ordinal Logit (polr)\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[4], "\"N\"\t\"1000\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[5+1], "\"\"\t\"Beta\"\t\"Std. Error\"\t\"t value\"\t\"p value\"")
expect_identical(ccContents[5+2], "\"V1\"\t\" 3.5492621\"\t\"0.17196611\"\t\"20.639311\"\t\"1.217860e-94\"")
expect_identical(ccContents[5+3], "\"V2\"\t\" 0.3574061\"\t\"0.05922486\"\t\" 6.034731\"\t\"1.592273e-09\"")
expect_identical(ccContents[5+4],"\"V3\"\t\"-0.5428056\"\t\"0.06325644\"\t\"-8.581034\"\t\"9.402445e-18\"")
getUnivariate(full_formula = this_formula,
df = df1, model_class = "polr",
returnIntercept = T)
ccContents = readClipboard()
expect_identical(ccContents[2], "\"Dep. Var.\"\t\"Y_bin\"\t\"\"\t\"\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[3], "\"Model\"\t\"Ordinal Logit (polr)\"\t\"\"\t\"\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[4], "\"N\"\t\"1000\"\t\"\"\t\"\"\t\"\"\t\"\"\t\"\"")
expect_identical(ccContents[5+1], "\"\"\t\"[-10.8,-1.35]|(-1.35,1.39]\"\t\"(-1.35,1.39]|(1.39,10.2]\"\t\"Beta\"\t\"Std. Error\"\t\"t value\"\t\"p value\"")
expect_identical(ccContents[5+2], "\"V1\"\t\"-1.6234700\"\t\"1.7144959\"\t\" 3.5492621\"\t\"0.17196611\"\t\"20.639311\"\t\"1.217860e-94\"")
expect_identical(ccContents[5+3], "\"V2\"\t\"-0.7033151\"\t\"0.7287217\"\t\" 0.3574061\"\t\"0.05922486\"\t\" 6.034731\"\t\"1.592273e-09\"")
expect_identical(ccContents[5+4], "\"V3\"\t\"-0.7370334\"\t\"0.7412720\"\t\"-0.5428056\"\t\"0.06325644\"\t\"-8.581034\"\t\"9.402445e-18\"")
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.