This is an R Markdown document. Markdown is a simple formatting syntax for authoring HTML, PDF, and MS Word documents. For more details on using R Markdown see http://rmarkdown.rstudio.com.
When you click the Knit button a document will be generated that includes both content as well as the output of any embedded R code chunks within the document. You can embed an R code chunk like this:
install.packages(c("foreign", "survey", "knitr"))
## Installing packages into '/cloud/lib/x86_64-pc-linux-gnu-library/4.5'
## (as 'lib' is unspecified)
library(foreign)
library(survey)
## Loading required package: grid
## Loading required package: Matrix
## Loading required package: survival
##
## Attaching package: 'survey'
## The following object is masked from 'package:graphics':
##
## dotchart
library(knitr)
# Load data
Apr17 <- read.spss("Apr17 public.sav",
to.data.frame = TRUE)
## re-encoding from CP1252
## Warning in read.spss("Apr17 public.sav", to.data.frame = TRUE): Undeclared
## level(s) 2, 3, 4 added in variable: density
## Warning in read.spss("Apr17 public.sav", to.data.frame = TRUE): Undeclared
## level(s) 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
## 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
## 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
## 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 93 added in
## variable: age
## Warning in read.spss("Apr17 public.sav", to.data.frame = TRUE): Undeclared
## level(s) 1, 2, 3, 4, 5, 6, 7 added in variable: hh1
## Warning in read.spss("Apr17 public.sav", to.data.frame = TRUE): Undeclared
## level(s) 1, 2, 3, 4, 5, 6, 7 added in variable: hh3
## Warning in read.spss("Apr17 public.sav", to.data.frame = TRUE): Undeclared
## level(s) 1, 2 added in variable: adults
## Warning in read.spss("Apr17 public.sav", to.data.frame = TRUE): Undeclared
## level(s) 1, 2, 3, 4, 5, 6 added in variable: child
# Check party distribution
table(Apr17$party)
##
## Republican Democrat Independent
## 375 466 616
## No preference (VOL.) Other party (VOL.) Don't know/Refused (VOL.)
## 28 9 7
# Survey design
Apr17_design = svydesign(
ids = ~0,
data = Apr17,
weights = ~weight)
svymean(~q1,
design = Apr17_design
)
## mean SE
## q1Approve 0.394008 0.0144
## q1Disapprove 0.542368 0.0147
## q1Don't know/Refused (VOL.) 0.063624 0.0078
q1_by_sex = svyby(~q1,
~sex,
design = Apr17_design,
FUN = svymean,
keep.names = FALSE
)
knitr::kable(q1_by_sex, digits = 2)
| sex | q1Approve | q1Disapprove | q1Don’t know/Refused (VOL.) | se.q1Approve | se.q1Disapprove | se.q1Don’t know/Refused (VOL.) |
|---|---|---|---|---|---|---|
| Male | 0.46 | 0.48 | 0.06 | 0.02 | 0.02 | 0.01 |
| Female | 0.33 | 0.60 | 0.06 | 0.02 | 0.02 | 0.01 |