使用可裁剪功能对齐柱

我正在执行一项简单的任务:创建一个表并使用R标记将其输出到pdf,如下所示:

库(knitr)
kable(数据表,对齐='ccccccc',
col.names=c(“复制”、“西格玛测试”、“西格玛下限”、“西格玛上限”,
“Lambda Est”、“Lambda Lower”、“Lambda Upper”),数字=3)

问题

输出表格时,列不居中。事实上,对于某些表,它们是右对齐的,而对于其他表,它们是左对齐的,这在我看来是随机的

问题

我如何使用packageknitr中的R功能kable控制列的对齐,即我做错了什么

编辑

运行:

库(knitr)
kable(数据表,align=c(rep('c',times=7)),
col.names=c(“复制”、“西格玛测试”、“西格玛下限”、“西格玛上限”,
“Lambda Est”、“Lambda Lower”、“Lambda Upper”),数字=3)

收益率:

|复制|σEst |σLower |σUpper | Lambda Est | Lambda Lower | Lambda Upper|
|:----:|:---------:|:-----------:|:-----------:|:----------:|:------------:|:------------:|
|  0   |  14.631   |   12.275    |   16.987    |   0.129    |    8.778     |    9.296     |
|  1   |  16.988   |   14.275    |   19.700    |   0.136    |    8.190     |    8.736     |
|  2   |  20.850   |   17.517    |   24.183    |   0.129    |    8.595     |    9.113     |
|  3   |  20.551   |   17.229    |   23.874    |   0.127    |    9.015     |    9.523     |
|  4   |  22.651   |   18.993    |   26.310    |   0.127    |    8.969     |    9.478     |
|  5   |  23.369   |   19.652    |   27.086    |   0.127    |    8.599     |    9.108     |

这正是我想要的,因为:-:表示列的居中,但是,当我按Knit PDF并生成PDF文档时,所有列仍保持左对齐。我该怎么做

您希望为kable提供等于列数的对齐字符串向量。如帮助文件中所述

列对齐:由“l”(左)、“c”(中)和/或“r”(右)组成的字符向量;默认情况下,数字列右对齐,其他列左对齐;如果align=NULL,则使用默认对齐方式

这是一个可复制的例子

如果没有任何对齐值,字符列将左对齐,数字列将右对齐,如下所示

库(knitr)
卡布尔(车头(mtcars[1:5]))

返回

| mpg | cyl | disp | hp | drat|
|:-----------------|----:|---:|----:|---:|----:|
|马自达RX4 | 21.0 | 6 | 160 | 110 | 3.90|
|马自达RX4 Wag | 21.0 | 6 | 160 | 110 | 3.90|
|Datsun 710 | 22.8 | 4 | 108 | 93 | 3.85|
|大黄蜂4路| 21.4 | 6 | 258 | 110 | 3.08|
|大黄蜂运动约| 18.7 | 8 | 360 | 175 | 3.15|
|英勇| 18.1 | 6 | 225 | 105 | 2.76|

为了使数字列居中对齐,同时保持字符列右对齐,我使用了以下命令

kable(头部(mtcars[1:5]),对齐=代表('c',5))
|| mpg | cyl | disp | hp | drat|
|:-----------------|:----:|:---:|:----:|:---:|:----:|
|马自达RX4 | 21.0 | 6 | 160 | 110 | 3.90|
|马自达RX4 Wag | 21.0 | 6 | 160 | 110 | 3.90|
|Datsun 710 | 22.8 | 4 | 108 | 93 | 3.85|
|大黄蜂4路| 21.4 | 6 | 258 | 110 | 3.08|
|大黄蜂运动约| 18.7 | 8 | 360 | 175 | 3.15|
|英勇| 18.1 | 6 | 225 | 105 | 2.76|

如果将以下文本复制到.Rmd文件中,将返回表格,格式如所需为pdf文件

---
标题:“无标题”
输出:pdf\U文件
---
这个东西
```{r table1,as.is=TRUE}
图书馆(knitr)
卡布尔(车头(mtcars[1:5]))
```
不是一个居中的桌子,而这个东西
```{r table2,as.is=TRUE}
卡布尔(头部(多节车厢[1:5]),对齐=代表('c',5))
```
这是一张居中的桌子。

发表评论