我在用 kable 和 kableExtra 格式化的表格中有一个脚注,用于 Rmarkdown 生成的 pdf。我需要 NYC 有上标 ( NYC^1) 来指向脚注,但不知道该怎么做。有什么建议么?
df <- data.frame(city=c("NYC","LA","CHI","MIA"),
score=sample(1:100, 4, replace=T))
library(kableExtra)
library(kable)
kable(df,
digits = 2,
format = "latex",
align="c",
row.names = FALSE,
booktabs=T) %>%
kable_styling(bootstrap_options = c("hover"),
full_width = F,
font_size = 12,
position = "left") %>%
footnote(number = c("2017 data missing"))
Run Code Online (Sandbox Code Playgroud) 我使用创建了下表kableExtra。我正在寻找一种方法,可以在 c 列和 d 列之间添加垂直边框(以分隔两个标题下的内容。)另外,有没有办法更改整个列中单元格的颜色(让说第三列?)
library(dplyr)
library(kableExtra)
a <- c('First', 'Second', 'Third')
b <- c(1,2,3)
c <- c(4,5,6)
d <- c(7,8,9)
e <- c(10,11,12)
df <- data.frame(a,b,c,d,e)
kable(df) %>%
kable_styling() %>%
add_header_above(c("","Header 1" = 2, "Header 2" = 2), bold = T)
Run Code Online (Sandbox Code Playgroud)
# Toy Data
ID <- c(paste("G0", as.character(1:9), sep = ""),"G10","G11","Mean")
V1 <- c(10.06,11.06,12.06,13.06,14.06,15.06,16.06,17.07,18.07,19.07,6.88,13.86)
V2 <- c(0.21,0.03,0.09,0.03,0.09,0.03,0.09,0.03,0.09,0.21,0.31,NA)
tbl <- data.frame(ID, V1, V1, V2, V1, V2, V1, V2, V2)
colnames(tbl) <- c('ID','Get. \\%','Get. \\%','K','Get. \\%','K','Get. \\%','K','P')
# Specify kable NA value and load kableExtra
options(knitr.kable.NA = '--')
require(kableExtra)
# Generate table for PDF output (LaTeX)
kbl(tbl, format = 'latex', align = 'l', booktabs = T, escape = F, digits = 2,
linesep = "", caption = "This is a table …Run Code Online (Sandbox Code Playgroud) 我有下面的数据框,我用它创建了一个数据框。如何在每 3 位数字之间添加逗号?
Descs<-structure(list(Mean = c(NaN, 943330388, NaN, NaN, NaN, 543234645,
45831420, NaN, 27301292, 160818771), Median = c(NaN, 943330388,
NaN, NaN, NaN, 543234645, 45831420, NaN, 27301292, 160818771),
SD = c(NA_real_, NA_real_, NA_real_, NA_real_, NA_real_,
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_), MAD = c(NA,
0, NA, NA, NA, 0, 0, NA, 0, 0), MIN = c(NA, 943330388, NA,
NA, NA, 543234645, 45831420, NA, 27301292, 160818771), MAX = c(NA,
943330388, NA, NA, NA, 543234645, 45831420, NA, 27301292,
160818771), VAR = c(NA_real_, NA_real_, NA_real_, …Run Code Online (Sandbox Code Playgroud) 使用 quarto 的 HMTL 输出功能,我尝试从 data.frame 生成一个 kable,其中包含一些应显示在最终文档中的 Markdown 样式格式。在实际用例中,我有许多文档已经以这种方式格式化,我想重新使用这些命令来正确呈现输出。
这是我的example.qmd:
---
title: "example"
format:
html
---
```{r setup}
library(kableExtra)
```
```{r}
#| echo: false
data.frame(Function = "`read_delim()`",
Formula = "$\\leftarrow$",
Break = "this continues on a<br>new line",
Link = "[Google](www.google.com)") |>
kbl(format = "html")
```
Run Code Online (Sandbox Code Playgroud)
运行该块后,RStudio 中的预览确实正确显示了箭头和换行符,但 ` ` 和链接无法生效:
将 qmd 渲染为 HTML 时,结果如下所示,即忽略格式:
我缺少什么?将四开文档渲染为 HTML 时,有没有办法将此类格式化命令包含到 kable 中?
假设下一个示例:
library(knitr)
library(kableExtra)
df <- data.frame(a = letters[1:10], b = 1:10)
names(df) <- c("This is a looooooong title, I don't know how to handle this... Also, I'm trying to extend this title even more... This column name will be used to compute vertical space","I want to align vectically this column name")
df %>% kable(format = 'latex', linesep = "", align = 'c') %>% kable_styling(full_width = T)
Run Code Online (Sandbox Code Playgroud)
如何垂直对齐第二列名称?
我想在两列 LaTeX 文章中包含一个更宽的表格。这可以在 LaTeX 中使用\begin{table*} ... \end{table*}而不是
\begin{table} ... \end{table}. 我如何告诉 R 包kable或kableExtra来实现这一点?
以下产生了通常的\begin{table}:
library(kableExtra)
kable(head(cars, 1), format = "latex") %>%
kable_styling()
Run Code Online (Sandbox Code Playgroud)
它产生:
#> \begin{table}[H]
#> \centering
#> \begin{tabular}{r|r}
#> \hline
#> speed & dist\\
#> \hline
#> 4 & 2\\
#> \hline
#> \end{tabular}
#> \end{table}
Run Code Online (Sandbox Code Playgroud)
但我想要的是以下内容:
#> \begin{table*}[H]
#> \centering
#> \begin{tabular}{r|r}
#> \hline
#> speed & dist\\
#> \hline
#> 4 & 2\\
#> \hline
#> \end{tabular}
#> …Run Code Online (Sandbox Code Playgroud) 我试图输出使用乳胶表r markdown,kable和kableExtra。我需要使用条件逻辑将颜色添加到带有 cell_spec 的表格中。但是对于pdf输出,它显示的乳胶代码如下;
如果我添加escape = false的kable(),它给了我下面的错误,
!缺少 $ 插入。$ l.142 sepal_length & sepal_width & petal_length & petal_width & Species\ 以下是您使用了多少 TeX 的内存: 14185 个字符串,共 492970 208670 个字符串字符,共 3125261 323511 个字的内存,共 30008004 个控制序列,共 30008004 个多列序列+200000 40 种字体的 23725 字字体信息,9000 的 3000000 字中的 1141 断字异常,8191 41i,9n,38p,1027b,272s 堆栈位置中的 5000i,5000p,000s,5000s,5000s
我是新来的rmarkdown和乳胶,请帮我解决这个问题。谢谢你。
这是我的 rmd 文件代码:
---
title: "Iris Data Table"
output: pdf_document
header-includes: \usepackage [table]{xcolor}
geometry: margin = 1cm …Run Code Online (Sandbox Code Playgroud) 我希望脚注中的字体大小小于表格中的文本,但无法弄清楚。是否有类似于 kable_styling 的东西,我可以在其中编辑表中可用于脚注的行的文本和颜色?我正在使用 RMarkdown 生成 HTML 而不是 LateX。
---
title: "Untitled"
output: html_document
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE )
library( kableExtra )
library( knitr )
```
```{r mtcars}
tab_mtcars <- knitr::kable( mtcars[ 1:5 , c( 1:4 )] , format = "html", col.names = c( "MPG", "CYL", "DISP" , "HP" ) , align = "lccc" , escape = F ) %>% kable_styling( full_width = T , bootstrap_options = c( "hover", "condensed" , "bordered"), position = "left") %>% add_header_above( c( …Run Code Online (Sandbox Code Playgroud) 从这个问题继续。我想修改结果的列宽,但不使用kableExtra. 如果我加载kableExtra包,图像将成为文本格式。
这是代码:
---
title: "Untitled"
output:
pdf_document:
latex_engine: xelatex
---
```{r echo=FALSE, results='hide', warning=FALSE, message=FALSE}
## Load modules
library(dplyr)
library(tidyr)
library(ggplot2)
options(tinytex.verbose = TRUE)
## Create a local function to plot the z score
varianceChart <- function(df, personNumber) {
plot <- df %>%
filter(n == personNumber) %>%
ggplot() +
aes(x=zscore, y=0) +
geom_rect(aes(xmin=-3.32, xmax=-1.96, ymin=-1, ymax=1), fill="orange2", alpha=0.8) +
geom_rect(aes(xmin=1.96, xmax=3.32, ymin=-1, ymax=1), fill="olivedrab3", alpha=0.8) +
geom_rect(aes(xmin=min(-4, zscore), xmax=-3.32, ymin=-1, ymax=1), fill="orangered3") + …Run Code Online (Sandbox Code Playgroud)