我有一个距离矩阵d,我想在Rmarkdown中格式化为数组。
```{r,echo=FALSE}
x <- c(1,3,1,4,5)
y <- c(5,4,3,5,1)
d <- dist(cbind(x,y))
```
所以d在Rmarkdown文档中看起来像这样:
$$\mathbf{d} = \left[\begin{array}
{rrrrr}
~ & 1 & 2 & 3 & 4 \\
2 & 2.236 & ~ & ~ & ~ \\
3 & 2.000 & 2.236 & ~ & ~ \\
4 & 3.000 & 1.414 & 3.606 & ~ \\
5 & 5.657 & 3.606 & 4.472 & 4.123
\end{array}\right]
$$
没有硬编码的任何提示吗?
编辑:在数组TeX代码中修复拼写错误。
答案 0 :(得分:0)
如果你想生成一个markdown表而不是LaTeX(然后将其转换为LaTeX / PDF / docx / whatever),那么在{{dist
类中添加对pander
类的支持是非常简单的。 1}}包。关于这个想法的简单例子:
> m <- as.matrix(d)
> m[upper.tri(m)] <- NA
> pander(m, split.table = Inf, digits = 4, missing = '', keep.trailing.zeros = TRUE)
-----------------------------
1 2 3 4 5
----- ----- ----- ----- -----
0.000
2.236 0.000
2.000 2.236 0.000
3.000 1.414 3.606 0.000
5.657 3.606 4.472 4.123 0.000
-----------------------------
如果您希望通过简单pander(d)
电话完成此操作,请在https://github.com/Rapporter/pander创建一个票证/拉取请求。