## Tables of Statistics

Ian Watson's `tabout` can produce beautiful frequency tables and tables of summary statistics, with output in LaTeX or HTML, and as noted in Chapter 9 of the User's Guide for version 3, it can also produce dynamic documents.

Here we show how you can combine the power of `tabout` with the simplicity of `markstat` to produce dynamic documents, using an abbreviated version of the example on page 72 and table 34 of the User's Guide.

Note that we use `tabout` to generate `table34.html` and then simply `.include table34.html` in the document. We omit the options `topf`, `topstr`, `botf` and `botstr`, using simple Markdown with inline code instead. Here is the script

`tabout1.stmd`
`````````s/
quietly sysuse auto, clear
quietly sum weight
local meanwt = r(mean)
quietly sum length
local meanlen = r(mean)
local obs = r(N)
quietly tabout rep78 foreign using table34.html, replace ///
style(htm) font(italic) c(mean weight) f(0c) sum ///
twidth(9) h1(Car type (mean weight in lbs.)) h3(nil) ///
title(Table 34: Short report example) fn(auto.dta)
```

The title of my short report
----------------------------

This is an excerpt of the report to focus on the dynamic parts.
And now we have an important result: __`s %3.2f `meanwt'`__ is
the average weight of all vehicles. And a second important
result: __`s %3.2f `meanlen'`__ is the average length.

And now we have the first table.

<center>

.include table34.html

</center>

<style>table {display:table; width:auto;}</style>
``````

And this is how the script is rendered by the command `markstat using tabout`.

`tabout1.html`

Note. `tabout` generates the table title and footer as separate paragraphs rather than a `caption` and `tfoot`. As a result they are not centered when the table is centered. To keep everything together I wrapped the table in center tags. I also added a CSS rule at the end to make sure the table width was automatic.

To obtain LaTeX output you just need to change the output to `using table34.tex`, the style to `style(tex)`, and then use `\input{table34.tex}` instead of `.include`.

In order to convert the generated LaTeX to PDF, however, we need to add four packages used by `tabout` which are not included in the Pandoc template. Fortunately this is easy to do with "header includes". This example uses only the first three packages, but I include all four for completeness. At the start of the script simply insert this YAML block:

```---