toplines In pollster: Calculate Crosstab and Topline Tables of Weighted Survey Data

```knitr::opts_chunk\$set(
collapse = TRUE,
comment = "#>"
)
```
```library(pollster)
library(dplyr)
library(knitr)
library(ggplot2)
```

The default topline table comes with columns for response category, frequency count, percent, valid percent, and cumulative percent.

```topline(df = illinois, variable = voter, weight = weight) %>%
kable()
```

Because the output is a `tibble`, it's simple to manipulate it in any way you want after creating it. Use `dplyr::select` to remove columns or `dplyr::filter` to remove rows. For convenience, the `topline` function also provides ways to do this within the function call. For example, the `remove` argument accepts a character vector of response values to be removed from the table after all statistics are calculated. This is especially useful for survey data with a "refused" category.

```topline(df = illinois, variable = voter, weight = weight,
remove = c("(Missing)"), pct = FALSE) %>%
mutate(Frequency = prettyNum(Frequency, big.mark = ",")) %>%
kable(digits = 0)
```

Refer to the `kableExtra` package for lots of examples on how to format the appearance of these tables in either HTML or PDF latex formats. I recommend the vignettes "Create Awesome HTML Table with knitr::kable and kableExtra" and "Create Awesome PDF Table with knitr::kable and kableExtra.

Graphs

```topline(df = illinois, variable = voter, weight = weight) %>%
ggplot(aes(Response, Percent, fill = Response)) +
geom_bar(stat = "identity")
```

Margin of error

Get at topline table with the margin of error in a separate column using the `moe_topline` function. By default, a z-score of 1.96 (95% confidence interval is used). Supply your own desired z-score using the `zscore` argument.

```moe_topline(df = illinois, variable = educ6, weight = weight)
```

The margin of error is calculated including the design effect of the sample weights, using the following formula:

`sqrt(design effect)*zscore*sqrt((pct*(1-pct))/(n-1))*100`

The design effect is calculated using the formula `length(weights)*sum(weights^2)/(sum(weights)^2)`.

Try the pollster package in your browser

Any scripts or data that you put into this service are public.

pollster documentation built on Aug. 25, 2020, 5:08 p.m.