首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用刻度表科学地写出数字(用×10 )

用刻度表科学地写出数字(用×10 )
EN

Stack Overflow用户
提问于 2022-08-22 10:54:40
回答 2查看 66关注 0票数 1

我想在× 10表中提到一些小的数字,类似于code here

以下是代码:

代码语言:javascript
复制
library(knitr)
library(kableExtra)
library(janitor)

x <- cbind(c("Term", "s(MERRA_WS)", "s(MERRA_T)", "s(MERRA_P)", "s(MERRA_WD)"),
           c( "edf", 
              round(6.69852,2),
              round(6.69852,2),
              round(6.69852,2),
              round(6.69852,2)),
          c("Statistics",
            round(6.69852,2),
              round(6.69852,2),
              round(6.69852,2),
              round(6.69852,2)),
           c("P-value", "$< 2 \\times 10^{-16}$","$< 2 \\times 10^{-16}$","$< 2 \\times 10^{-16}$","$< 2 \\times 10^{-16}$"),
          c("Significance", "***", "***","***","***")
          )

x <- as.data.frame(x) # set as dataframe

x <- janitor::row_to_names(x, 1, remove_rows_above = FALSE) %>%  clean_names() # set the 1st row as header

rownames(x) <- NULL

x %>% 
   knitr::kable(digits = 2, 
               caption = "\\label{table:par-4} Estimates of parametric parameters for the modified model 4", align = c("l","c","c","c","c"),col.names = c("Term","edf", "Statistic", "P-value", "Significance"),
               format = "latex", booktabs = T) %>%  kable_styling(font_size = 8,
                                                  latex_options = "hold_position",
                                                  full_width = F) %>% 
   row_spec(0, bold = T) %>%
  column_spec(1, border_right = F)

下面是P值列没有转换为科学形式的输出:

我希望P值列中的输出如下所示:

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-08-22 11:30:14

一个诀窍可能是在escape = FALSE中使用kable()。但你得小心点。根据文件,

= FALSE时,您必须确保特殊字符不会触发LaTeX或HTML中的语法错误。

这就是为什么我们必须手动将s(MERRA_WS)中的下划线转义为s(MERRA\\_WS)

代码语言:javascript
复制
---
title: "P value formatting"
output: pdf_document
---

```{r setup, include=FALSE}

knitr::opts_chunk$set(echo =真)

代码语言:javascript
复制
## R Markdown

```{r}

图书馆(针织品)

图书馆(KableExtra)

图书馆(看门人)

图书馆(Rstatix)

X <- cbind(c(术语),"s(MERRA\_WS)","s(MERRA\_T)","s(MERRA\_P)","s(MERRA\_WD)"),

代码语言:javascript
复制
       c( "edf", 
代码语言:javascript
复制
          round(6.69852,2),
代码语言:javascript
复制
          round(6.69852,2),
代码语言:javascript
复制
          round(6.69852,2),
代码语言:javascript
复制
          round(6.69852,2)),
代码语言:javascript
复制
      c("Statistics",
代码语言:javascript
复制
        round(6.69852,2),
代码语言:javascript
复制
          round(6.69852,2),
代码语言:javascript
复制
          round(6.69852,2),
代码语言:javascript
复制
          round(6.69852,2)),
代码语言:javascript
复制
       c("P-value", 
代码语言:javascript
复制
         "$< 2 \\times 10^{-16}$", 
代码语言:javascript
复制
         "$< 2 \\times 10^{-16}$", 
代码语言:javascript
复制
         "$< 2 \\times 10^{-16}$", 
代码语言:javascript
复制
         "$< 2 \\times 10^{-16}$"),
代码语言:javascript
复制
      c("Significance", "***", "***","***","***")
代码语言:javascript
复制
      )

X <- as.data.frame(x)

X <- janitor::row_to_names(x,1,remove_rows_above = FALSE) %>% clean_names()

行名(X) <- NULL

X %>%

针织品::kable(数字= 2,

代码语言:javascript
复制
   caption = "\\label{table:par-4} Estimates of parametric parameters for the modified model 4",
代码语言:javascript
复制
   align = c("l","c","c","c","c"),
代码语言:javascript
复制
   col.names = c("Term","edf", "Statistic", "P-value", "Significance"),
代码语言:javascript
复制
   format = "latex", 
代码语言:javascript
复制
   booktabs = T,
代码语言:javascript
复制
   escape = FALSE) %>%  

kable_styling(font_size = 8,

代码语言:javascript
复制
            latex_options = "hold_position",
代码语言:javascript
复制
            full_width = F) %>% 

row_spec(0,粗体= T) %>%

column_spec(1,border_right = F)

代码语言:javascript
复制

票数 2
EN

Stack Overflow用户

发布于 2022-08-22 11:15:13

代码语言:javascript
复制
library(tidyverse)
library(knitr)

tibble(PValue="2 x 10^-16^") %>% kable()

在标记文档中的块中生成

如上面可能的重复所示。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73443963

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档