如何在 tinytex data.table() 中获取上标

How do I get superscript in tinytex data.table()

我正在使用 data.table() 以 PDF 格式打印表格。在这些表格中,我想要一些带有上标的文本。我已经尝试了几件事,但我只找到使用 kable()tibble() 的解决方案 - 但我真的想使用 data.table() 或使用 expression() 的解决方案- 我无法在 PDF 中工作。

这是一些简单的示例代码。

library(data.table)

some_table <- data.table(
    element = c('Some text with <1> in superscript at the end',
                'Some more text')
    )

提前致谢!

上标可以使用sup,下标可以使用sub。也许你想要这样的东西:

library(DT)
some_table <- datatable(
  data.frame(c(1, 2), 
             row.names = c("Some text with A<sup>1</sup>", "Some more text")), rownames = T, escape = FALSE)

some_table

输出:

不支持 data.table

data.table 包似乎不支持上标表达式。尝试时出现以下错误:

Error in `[.data.table`(x, i, , ) : Internal error: column type 'expression' not supported by data.table subset. All known types are supported so please report as bug.

使用此代码时:

library(data.table)

    my_string <- "'title'^2"
    my_title <- parse(text=my_string)
    
    some_table <- data.table(
        element = c('Some text with', my_title, 'in superscript at the end',
                    'Some more text')
        )
    
    some_table
    ```

It seems currently not available for `data.table`.

Rmarkdown + LaTeX 的两个选项:

---
title: "Untitled"
output: pdf_document
---

```{r}
library(kableExtra)
levels(iris$Species)[1] <- "setosa\textsuperscript{*}"
names(iris)[5]          <- "Species$^x$"
kable(iris[1:2, ], format='latex', escape=FALSE)
```