Nothing
## ---- message=FALSE-----------------------------------------------------------
library(surveyCV)
library(survey)
library(ISLR)
## -----------------------------------------------------------------------------
data(Auto)
with(Auto, plot(horsepower, mpg, pch = '.'))
## -----------------------------------------------------------------------------
# Test the general cv.svy() function
# The first line's results are usually around:
# linear lm: mean=24.3, se=1.45
# quadratic lm: mean=19.3, se=1.38
cv.svy(Auto, c("mpg~poly(horsepower,1, raw = TRUE)",
"mpg~poly(horsepower,2, raw = TRUE)"),
nfolds = 10)
cv.svy(Auto, c("mpg~poly(horsepower,1,raw=TRUE)",
"mpg~poly(horsepower,2,raw=TRUE)"),
nfolds = 10, clusterID = "year")
cv.svy(Auto, c("mpg~poly(horsepower,1, raw = TRUE)",
"mpg~poly(horsepower,2, raw = TRUE)"),
nfolds = 10, strataID = "year")
## -----------------------------------------------------------------------------
# Test the cv.svydesign() function, which takes a svydesign object and formulas
auto.srs.svy <- svydesign(ids = ~0,
data = Auto)
auto.clus.svy <- svydesign(ids = ~year,
data = Auto)
auto.strat.svy <- svydesign(ids = ~0,
strata = ~year,
data = Auto)
cv.svydesign(formulae = c("mpg~poly(horsepower,1, raw = TRUE)",
"mpg~poly(horsepower,2, raw = TRUE)",
"mpg~poly(horsepower,3, raw = TRUE)"),
design_object = auto.srs.svy, nfolds = 10)
cv.svydesign(formulae = c("mpg~poly(horsepower,1, raw = TRUE)",
"mpg~poly(horsepower,2, raw = TRUE)",
"mpg~poly(horsepower,3, raw = TRUE)"),
design_object = auto.clus.svy, nfolds = 10)
cv.svydesign(formulae = c("mpg~poly(horsepower,1, raw = TRUE)",
"mpg~poly(horsepower,2, raw = TRUE)",
"mpg~poly(horsepower,3, raw = TRUE)"),
design_object = auto.strat.svy, nfolds = 10)
## -----------------------------------------------------------------------------
# Test the cv.svyglm() function, which takes one svyglm object
srs.model <- svyglm(mpg~horsepower+I(horsepower^2)+I(horsepower^3), design = auto.srs.svy)
clus.model <- svyglm(mpg~horsepower+I(horsepower^2)+I(horsepower^3), design = auto.clus.svy)
strat.model <- svyglm(mpg~horsepower+I(horsepower^2)+I(horsepower^3), design = auto.strat.svy)
cv.svyglm(glm = srs.model, nfolds = 10)
cv.svyglm(glm = clus.model, nfolds = 10)
cv.svyglm(glm = strat.model, nfolds = 10)
## -----------------------------------------------------------------------------
seed = 20210708
set.seed(seed)
cv.svy(Auto, "mpg~horsepower+I(horsepower^2)+I(horsepower^3)",
nfolds = 10)
set.seed(seed)
cv.svydesign(formulae = "mpg~horsepower+I(horsepower^2)+I(horsepower^3)",
design_object = auto.srs.svy, nfolds = 10)
srs.model <- svyglm(mpg~horsepower+I(horsepower^2)+I(horsepower^3), design = auto.srs.svy)
set.seed(seed)
cv.svyglm(glm = srs.model, nfolds = 10)
## -----------------------------------------------------------------------------
Auto$isAmerican <- Auto$origin == 1
with(Auto, plot(horsepower, isAmerican))
cv.svy(Auto, c("isAmerican~horsepower",
"isAmerican~horsepower+I(horsepower^2)",
"isAmerican~horsepower+I(horsepower^2)+I(horsepower^3)"),
nfolds = 10, method = "logistic")
## -----------------------------------------------------------------------------
# Should stop early because method isn't linear or logistic
try(cv.svy(Auto, "mpg~horsepower+I(horsepower^2)+I(horsepower^3)",
nfolds = 10,
method = "abcde"))
# Should try to run but crash because response variable isn't 0/1
try(cv.svy(Auto, "mpg~horsepower+I(horsepower^2)+I(horsepower^3)",
nfolds = 10,
method = "logistic"))
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.