在 R 中的 DT::datatable 中包含表容器

2024-04-11

我是 HTML 和交互式表格的新手,并且在构建表格容器来为我的数据集添加标题时遇到了麻烦。有没有一种简单的方法可以为我的数据集插入表头?我希望第 2-5 列(不包括第 1 列中的日期)和第 6-9 列分别具有标题“部门”和“行业”。

我在下面包含了数据集的摘录。

谢谢你!

library(tidyverse)
library(DT)

df <- structure(list(date = c("1975 Q1", "1975 Q2", "1975 Q3", "1975 Q4", 
"1976 Q1", "1976 Q2"), Sector = c("Accommodation Food Services", 
"Accommodation Food Services", "Accommodation Food Services", 
"Accommodation Food Services", "Accommodation Food Services", 
"Accommodation Food Services"), industry = structure(c(3L, 3L, 
3L, 3L, 3L, 3L), .Label = c("Goods", "Ownership", "Services"), class = "factor"), 
    Sector_GDP = c(112.4, 110.7, 116.6, 123.4, 125.1, 120.7), 
    sector_GDP_change = c(0, -0.0151, 0.0533, 0.0583, 0.0138, 
    -0.0352), goods_producing_industries = c(1014.2, 1090.9, 
    1205.7, 1269.6, 1166.6, 1247.6), services_producing_industries = c(1991.7, 
    2019.6, 2105.2, 2206.6, 2154.2, 2156.5), total_GDP = c(3087.1, 
    3194, 3396.9, 3562.9, 3409.4, 3493.4), industry_GDP_change = c(0, 
    0.0346, 0.0635, 0.0489, -0.0431, 0.0246)), row.names = c(NA, 
-6L), groups = structure(list(industry = structure(3L, .Label = c("Goods", 
"Ownership", "Services"), class = "factor"), .rows = structure(list(
    1:6), ptype = integer(0), class = c("vctrs_list_of", "vctrs_vctr", 
"list"))), row.names = 1L, class = c("tbl_df", "tbl", "data.frame"
), .drop = TRUE), class = c("grouped_df", "tbl_df", "tbl", "data.frame"
))

DT::datatable(df)

Created on 2020-09-04 by the reprex package https://reprex.tidyverse.org (v0.3.0)

devtools::session_info()
#> ─ Session info ───────────────────────────────────────────────────────────────
#>  setting  value                       
#>  version  R version 4.0.2 (2020-06-22)
#>  os       macOS Catalina 10.15.5      
#>  system   x86_64, darwin17.0          
#>  ui       X11                         
#>  language (EN)                        
#>  collate  en_AU.UTF-8                 
#>  ctype    en_AU.UTF-8                 
#>  tz       Australia/Melbourne         
#>  date     2020-09-04                  
#> 
#> ─ Packages ───────────────────────────────────────────────────────────────────
#>  package     * version date       lib source        
#>  assertthat    0.2.1   2019-03-21 [1] CRAN (R 4.0.2)
#>  backports     1.1.9   2020-08-24 [1] CRAN (R 4.0.2)
#>  blob          1.2.1   2020-01-20 [1] CRAN (R 4.0.2)
#>  broom         0.7.0   2020-07-09 [1] CRAN (R 4.0.2)
#>  callr         3.4.3   2020-03-28 [1] CRAN (R 4.0.2)
#>  cellranger    1.1.0   2016-07-27 [1] CRAN (R 4.0.2)
#>  cli           2.0.2   2020-02-28 [1] CRAN (R 4.0.2)
#>  colorspace    1.4-1   2019-03-18 [1] CRAN (R 4.0.2)
#>  crayon        1.3.4   2017-09-16 [1] CRAN (R 4.0.2)
#>  crosstalk     1.1.0.1 2020-03-13 [1] CRAN (R 4.0.2)
#>  curl          4.3     2019-12-02 [1] CRAN (R 4.0.1)
#>  DBI           1.1.0   2019-12-15 [1] CRAN (R 4.0.2)
#>  dbplyr        1.4.4   2020-05-27 [1] CRAN (R 4.0.2)
#>  desc          1.2.0   2018-05-01 [1] CRAN (R 4.0.2)
#>  devtools      2.3.1   2020-07-21 [1] CRAN (R 4.0.2)
#>  digest        0.6.25  2020-02-23 [1] CRAN (R 4.0.2)
#>  dplyr       * 1.0.2   2020-08-18 [1] CRAN (R 4.0.2)
#>  DT          * 0.15    2020-08-05 [1] CRAN (R 4.0.2)
#>  ellipsis      0.3.1   2020-05-15 [1] CRAN (R 4.0.2)
#>  evaluate      0.14    2019-05-28 [1] CRAN (R 4.0.1)
#>  fansi         0.4.1   2020-01-08 [1] CRAN (R 4.0.2)
#>  forcats     * 0.5.0   2020-03-01 [1] CRAN (R 4.0.2)
#>  fs            1.5.0   2020-07-31 [1] CRAN (R 4.0.2)
#>  generics      0.0.2   2018-11-29 [1] CRAN (R 4.0.2)
#>  ggplot2     * 3.3.2   2020-06-19 [1] CRAN (R 4.0.2)
#>  glue          1.4.2   2020-08-27 [1] CRAN (R 4.0.2)
#>  gtable        0.3.0   2019-03-25 [1] CRAN (R 4.0.2)
#>  haven         2.3.1   2020-06-01 [1] CRAN (R 4.0.2)
#>  highr         0.8     2019-03-20 [1] CRAN (R 4.0.2)
#>  hms           0.5.3   2020-01-08 [1] CRAN (R 4.0.2)
#>  htmltools     0.5.0   2020-06-16 [1] CRAN (R 4.0.2)
#>  htmlwidgets   1.5.1   2019-10-08 [1] CRAN (R 4.0.2)
#>  httr          1.4.2   2020-07-20 [1] CRAN (R 4.0.2)
#>  jsonlite      1.7.0   2020-06-25 [1] CRAN (R 4.0.2)
#>  knitr         1.29    2020-06-23 [1] CRAN (R 4.0.2)
#>  lifecycle     0.2.0   2020-03-06 [1] CRAN (R 4.0.2)
#>  lubridate     1.7.9   2020-06-08 [1] CRAN (R 4.0.2)
#>  magrittr      1.5     2014-11-22 [1] CRAN (R 4.0.2)
#>  memoise       1.1.0   2017-04-21 [1] CRAN (R 4.0.2)
#>  mime          0.9     2020-02-04 [1] CRAN (R 4.0.2)
#>  modelr        0.1.8   2020-05-19 [1] CRAN (R 4.0.2)
#>  munsell       0.5.0   2018-06-12 [1] CRAN (R 4.0.2)
#>  pillar        1.4.6   2020-07-10 [1] CRAN (R 4.0.2)
#>  pkgbuild      1.1.0   2020-07-13 [1] CRAN (R 4.0.2)
#>  pkgconfig     2.0.3   2019-09-22 [1] CRAN (R 4.0.2)
#>  pkgload       1.1.0   2020-05-29 [1] CRAN (R 4.0.2)
#>  prettyunits   1.1.1   2020-01-24 [1] CRAN (R 4.0.2)
#>  processx      3.4.3   2020-07-05 [1] CRAN (R 4.0.2)
#>  ps            1.3.4   2020-08-11 [1] CRAN (R 4.0.2)
#>  purrr       * 0.3.4   2020-04-17 [1] CRAN (R 4.0.2)
#>  R6            2.4.1   2019-11-12 [1] CRAN (R 4.0.2)
#>  Rcpp          1.0.5   2020-07-06 [1] CRAN (R 4.0.2)
#>  readr       * 1.3.1   2018-12-21 [1] CRAN (R 4.0.2)
#>  readxl        1.3.1   2019-03-13 [1] CRAN (R 4.0.2)
#>  remotes       2.2.0   2020-07-21 [1] CRAN (R 4.0.2)
#>  reprex        0.3.0   2019-05-16 [1] CRAN (R 4.0.2)
#>  rlang         0.4.7   2020-07-09 [1] CRAN (R 4.0.2)
#>  rmarkdown     2.3     2020-06-18 [1] CRAN (R 4.0.2)
#>  rprojroot     1.3-2   2018-01-03 [1] CRAN (R 4.0.2)
#>  rvest         0.3.6   2020-07-25 [1] CRAN (R 4.0.2)
#>  scales        1.1.1   2020-05-11 [1] CRAN (R 4.0.2)
#>  sessioninfo   1.1.1   2018-11-05 [1] CRAN (R 4.0.2)
#>  stringi       1.4.6   2020-02-17 [1] CRAN (R 4.0.2)
#>  stringr     * 1.4.0   2019-02-10 [1] CRAN (R 4.0.2)
#>  testthat      2.3.2   2020-03-02 [1] CRAN (R 4.0.2)
#>  tibble      * 3.0.3   2020-07-10 [1] CRAN (R 4.0.2)
#>  tidyr       * 1.1.2   2020-08-27 [1] CRAN (R 4.0.2)
#>  tidyselect    1.1.0   2020-05-11 [1] CRAN (R 4.0.2)
#>  tidyverse   * 1.3.0   2019-11-21 [1] CRAN (R 4.0.2)
#>  usethis       1.6.1   2020-04-29 [1] CRAN (R 4.0.2)
#>  vctrs         0.3.4   2020-08-29 [1] CRAN (R 4.0.2)
#>  webshot       0.5.2   2019-11-22 [1] CRAN (R 4.0.2)
#>  withr         2.2.0   2020-04-20 [1] CRAN (R 4.0.2)
#>  xfun          0.16    2020-07-24 [1] CRAN (R 4.0.2)
#>  xml2          1.3.2   2020-04-23 [1] CRAN (R 4.0.2)
#>  yaml          2.2.1   2020-02-01 [1] CRAN (R 4.0.2)
#> 
#> [1] /Library/Frameworks/R.framework/Versions/4.0/Resources/library

这会产生你想要的吗?

# a custom table container
sketch = htmltools::withTags(table(
   class = 'display',
   thead(
      tr(
         th(rowspan = 2, 'date'),
         th(colspan = 4, 'Sector'),
         th(colspan = 4, 'Industry')
      ),
      tr(
         lapply(names(df)[-1], th)
      )
   )
))
print(sketch)

DT::datatable(df, container = sketch, rownames = FALSE)

改编自第 2.6 节https://rstudio.github.io/DT/ https://rstudio.github.io/DT/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 R 中的 DT::datatable 中包含表容器 的相关文章

随机推荐

  • Google 云存储桶的加载时间缓慢

    目前 我正在从一个网站加载图像谷歌云存储桶 我的印象是多区域谷歌云存储桶应该是互联网上加载图像最快的方式之一 然而 情况似乎并非如此当我比较我的网站与竞争对手的瀑布图像加载时间时 比我的好很多 我可以做些什么来缩短 Google 云存储图像
  • Heroku 内置(Touch ID)不起作用,并且没有一次性密码生成器设置

    我的 mac 坏了 因此 我无法再在 heroku 上使用 touchID 来验证自己 因此 唯一的其他选择是使用一次性密码生成器 我什至没有设置它 您需要登录 并验证 才能设置 我该怎么办 我如何才能访问我的 heroku 帐户 Hero
  • 从 C# 获取 Powershell 错误

    Problem 我正在从 c 调用 powershell 命令 但是PowerShell命令对象似乎只有属性bool HasErrors这对我没有帮助what我收到的错误 这就是我构建 powershell 命令的方式 Library pu
  • 如何在网站上的多个登录字段上使用自动填充

    当网页上有两个单独的登录字段时 我的浏览器 Google Chrome 假设它们都需要相同的凭据 这不是一个有效的假设 我希望我的浏览器能够分别存储每个人的凭据
  • 如何将 JavaFX TableView 与 java 记录一起使用?

    Records是一个新功能Java 16 https en wikipedia org wiki Java version history Java 16 定义于JEP 395 记录 https openjdk org jeps 395 假
  • 如何在反应中单击按钮将一个组件移动到另一个组件?

    您能告诉我如何在反应中单击按钮时将一个组件移动到另一个组件吗 我得到了react router js来自 cdn 我不知道如何使用这个 js 我想展示second component on button click of第一个组件 这是我的
  • Delphi MREW 实现对读者有利吗?

    是否有 MREW 多读 独占写 锁的 Delphi 实现 它有利于读而不是写 我觉得TMultiReadExclusiveWriteSynchronizer http edn embarcadero com article 28258已经受
  • Java中对象的类型切换

    所以我想知道一种在Java中切换有效类型的简单方法 如下所示 我知道这不能编译 但我想要这个功能 public void put Object obj if obj instanceof Integer else if obj instan
  • JButton 中的图标位置

    是否有可能更改 JButton 中的图标图像位置 现在看起来是这样的 我想将图标移到更左边 我尝试更改文本对齐方式 但它无法按我想要的方式工作 myButton setHorizontalTextPosition SwingConstant
  • 将有符号整数转换为无符号长整型的最佳方法?

    对于 Java 中的某些哈希函数 最好将值视为无符号整数 例如 用于与其他实现进行比较 但 Java 仅支持有符号类型 我们可以将有符号的int到 未签名 long像这样 public static final int BITS PER B
  • Scrum 故事和幕后特色 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 据我了解 Scrum 待办事项由一系列代表最终用户的故事组成 并进一步分解为功能 如果是这样的话 所有与故事没有真正联系但仍然有用的幕后功
  • PyQt4、QThread 和打开大文件而不冻结 GUI

    我想问如何从磁盘读取大文件并保持 PyQt4 UI 响应 不阻塞 我已将文件的负载移至 QThread 子类 但我的 GUI 线程被冻结 有什么建议么 我想这一定是GIL的问题 但我不知道如何排序 编辑 我正在使用 GDCM 项目中的 vt
  • HBase如何实现对HDFS的随机访问?

    鉴于HBase是一个数据库 其文件存储在HDFS中 那么它如何实现对HDFS中单个数据的随机访问呢 这是通过什么方法实现的呢 From Apache HBase 参考指南 http hbase apache org book archite
  • 事件+适配器模式

    我在泛型类上有一个适配器模式 它本质上在类型之间进行适应 class A
  • 如何在我的 Swift 项目中使用 Objective-C 项目

    注 我知道如何从 Swift 调用 Objective C 代码 https stackoverflow com q 24002369 6521116 但我不知道下面 我想用这个EsptouchForIOS的演示 https github
  • @AutoConfigureAfter 未按预期工作

    我有 3 个 spring boot starter 项目 其中一个自动配置类具有以下代码 Configuration ConditionalOnClass value Config class AutoConfigureAfter val
  • SQL查询结果需要返回WHERE子句中的所有记录,甚至重复

    我是 Microsoft SQL Server 的新手 需要一个查询来返回 WHERE 子句中列出的所有记录 甚至是重复的记录 我所拥有的只会返回 3 行 我正在使用 C 读入并解析文本文件 使用该文本文件 我创建一个查询以从数据库获取结果
  • Xcode:多人共享相同的 Bundle ID

    我正在和朋友一起开发 iOS 应用程序 我们都以个人身份报名参加了 Apple 开发计划 我们没有组织 我们正在使用 git 并且希望能够从 Mac 构建应用程序 但我无法编译 因为 Bundle ID 已被我的朋友使用 是否有可能在不成为
  • 将数据库文件从文件资源管理器中的 /assets 复制到 /data/data 文件夹 - Android

    我在文件资源管理器中将数据库文件从 assets 复制到 data data 文件夹时遇到问题 我搜索了这个网站 找到了很多答案 但找不到适合我的情况的适当答案 我已经使用 SQLite Manager 在外部创建了数据库并将其导入到资产文
  • 在 R 中的 DT::datatable 中包含表容器

    我是 HTML 和交互式表格的新手 并且在构建表格容器来为我的数据集添加标题时遇到了麻烦 有没有一种简单的方法可以为我的数据集插入表头 我希望第 2 5 列 不包括第 1 列中的日期 和第 6 9 列分别具有标题 部门 和 行业 我在下面包