Printing (PDF)

This article is about PDF printing specifically. To learn the many other ways to print, export, or save surveytable tables, see vignette("Printing").

Basic printing

If a tabulation function is called from the top level, it should print out its table(s) on its own.

As usual, first, let’s start up the package and pick a survey to analyze:

library(surveytable)
set_survey(namcs2019sv)
Survey info {NAMCS 2019 PUF}
Variables Observations Design
33 8,250 Stratified 1 - level Cluster Sampling design (with replacement) With (398) clusters. namcs2019sv = survey::svydesign(ids = ~CPSUM, strata = ~CSTRATM, weights = ~PATWT , data = namcs2019sv_df)

Now, when a tabulation function is called from the top level, it prints. You don’t need to do anything extra.

tab("AGER")
Patient age recode (knowns only) {NAMCS 2019 PUF}
Level n Number (000) SE (000) LL (000) UL (000) Percent SE LL UL
Under 15 years 887 117,917 14,097 93,229 149,142 11.4 1.3 8.9 14.2
15-24 years 542 64,856 7,018 52,387 80,292 6.3 0.6 5.1 7.5
25-44 years 1,435 170,271 13,966 144,925 200,049 16.4 1.1 14.3 18.8
45-64 years 2,283 309,506 23,290 266,994 358,787 29.9 1.4 27.2 32.6
65-74 years 1,661 206,866 14,366 180,481 237,109 20.0 1.2 17.6 22.5
75 years and over 1,442 167,069 15,179 139,746 199,735 16.1 1.3 13.7 18.8
N = 8250. Checked NCHS presentation standards. Nothing to report.

If a tabulation function is called not from the top level, such as from within a loop or another function, you do need to call print() explicitly for it to print. For example:

for (vr in c("AGER", "SEX")) {
  print( tab_subset(vr, "MAJOR", "Preventive care") )
}
Patient age recode (Major reason for this visit = Preventive care) (knowns only) {NAMCS 2019 PUF}
Level n Number (000) SE (000) LL (000) UL (000) Percent SE LL UL
Under 15 years 300 50,701 8,556 36,352 70,714 22.7 3.5 16.1 30.4
15-24 years 121 18,196 2,889 13,246 24,996 8.1 1.2 5.9 10.9
25-44 years 370 50,573 6,835 38,749 66,005 22.6 2.5 17.8 28.0
45-64 years 355 53,805 9,478 37,982 76,218 24.1 3.2 17.9 31.1
65-74 years 225 27,985 4,669 20,073 39,017 12.5 1.8 9.2 16.5
75 years and over 197 22,363 3,805 15,925 31,404 10.0 1.7 6.9 13.8
N = 1568. Checked NCHS presentation standards. Nothing to report.
Patient sex (Major reason for this visit = Preventive care) (knowns only) {NAMCS 2019 PUF}
Level n Number (000) SE (000) LL (000) UL (000) Percent SE LL UL
Female 1,014 139,091 11,845 117,664 164,421 62.2 2.9 56.2 68.0
Male 554 84,532 10,594 66,039 108,204 37.8 2.9 32.0 43.8
N = 1568. Checked NCHS presentation standards. Nothing to report.

Create HTML or PDF tables

Using a Quarto document, you can create tables in many different formats, such as HTML or PDF. Here is a straightforward example of what a Quarto document might look like:

---
title: "My tables"
author: "Me"
format: pdf
---

# Welcome 

As usual, first, let's start up the package and pick a survey to analyze:

```{r, results='asis'}
library(surveytable)
set_survey(namcs2019sv, output = 'auto')
```

# Tables

Take a look at this table:

```{r, results='asis'}
tab("AGER")
```

Note the format setting, which specifies that this document will create PDF tables. Also note that you do have to add the results='asis' argument to the code chunks that print tables.

More

To learn the many other ways to print, export, or save surveytable tables, see vignette("Printing").