Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to suppress automatic table name and number in an .Rmd file using xtable or knitr::kable?

I'd like to name my tables from R scripts without the automatic Table 1:... prefix when using xtable() or knitr::kable() in an .Rmd file. Output is a pdf document.

Here's a reproducible example from an .Rmd file:

---
title: "Suppress automatic table name and number"
output: pdf_document
---

```{r myirischunk, results = 'asis', tab.cap = NULL, echo = TRUE}
library(xtable)

print(knitr::kable(head(iris), caption = "I sure wish it would say Table    1.a"))
print(knitr::kable(head(iris), caption = "Please stop"))
print(xtable(head(iris), caption = "Same thing with xtable"))
```

I've seen similar questions with some suggestions here, but I can't seem to get it to work in an .Rmd file.

like image 974
vestland Avatar asked Jul 02 '15 10:07

vestland


People also ask

What is knitr :: Kable?

The kable() function in knitr is a very simple table generator, and is simple by design. It only generates tables for strictly rectangular data such as matrices and data frames.

What is Kable?

kable() is a method in R designed to generate a table against the given input. It is a part of the knitr package, which should be installed in the R environment for the kable method to run.

How do I embed a table in Rmarkdown?

To use it, open a Rmd or R document and select “Addins –> Insert Table”.


1 Answers

It turns out that I needed to add the following in the YAML section:

header-includes:
    - \usepackage{caption}

AND the following somewhere before the code chunk:

\captionsetup[table]{labelformat=empty}

Now it works:

---
title: "Suppress automatic table name and number"
output: pdf_document
header-includes:
    - \usepackage{caption}
---

\captionsetup[table]{labelformat=empty}

```{r myirischunk, results = 'asis', tab.cap = NULL, echo = TRUE}
print(knitr::kable(head(iris), caption = "Table 21.a - My very own table name"))
```

This has also been described here:

Get rid of captions using texreg in markdown

And yes, I'm a bit embarrased that I didn't find that answer straight away.

Anyway, thanks to daroczig for pointing me in the tex direction instead of trying to solve the problem using chunk options or something like that.

like image 100
vestland Avatar answered Oct 21 '22 21:10

vestland