![html tables html tables](https://image.ec21.com/image/gaabor/oimg_GC11626059_CA11626063/Gaabor-Table-Cooler-Fan.jpg)
You can manually set any format in kable() whenever you want. I’m still including the explanation above here in this vignette so you can understand what is going on behind the scene. You no longer need to manually set either the global option or the format option in each kable() function. Unless you are rendering a PDF, kableExtra will try to render a HTML table for you. Starting from kableExtra 0.9.0, when you load this package ( library(kableExtra)), it will automatically set up the global option ‘’ based on your current environment. You can also define a global option at the beginning using options( = "html") so you don’t repeat the step everytime. As a result, when you have such a need, you should define format in kable() as either “html” or “latex”. For example, if you want to have a double-row header table, markdown just cannot provide you the functionality you need. However, markdown doesn’t support complex table. If you switch from HTML to pdf, you basically don’t need to change anything in your code. This is the most favorable approach to render most simple tables as it is format independent. When you are using kable(), if you don’t specify format, by default it will generate a markdown table and let pandoc handle the conversion from markdown to HTML/PDF. It’s here only for education purpose because it’s helpful to understand how kable works under the hood. In this doc, we will use kbl instead of kable. I encourage you start to use the new kbl function for all its convenience but the support for the original kable function is still there. As a result, it also solves an issue for multi-format R Markdown documents. It also does auto-formatting check in every function call instead of relying on the global environement variable.
![html tables html tables](https://1.bp.blogspot.com/-Z6jDSVDj5lQ/UZCah0BhcUI/AAAAAAAAAbM/ayHF6-WuoKg/s1600/Fullscreen+capture+5-13-2013+123840+pm.jpg)
Key Update: In the latest version of this package (1.2+), we provide a wrapper funciton kbl to the original kable function with detailed documentation of all the hidden html/latex options.
![html tables html tables](https://www.educba.com/academy/wp-content/uploads/2019/12/Vertical-Table-HTML-768x427.jpg)
Here we are using the first few columns and rows from dataset mtcars library(kableExtra)