如何将r中的格式化数据表复制到剪贴板

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将r中的格式化数据表复制到剪贴板相关的知识,希望对你有一定的参考价值。

此数据表有一个复制按钮:

library(DT)
iris2 = head(iris, 20)
# only show the Copy and Print buttons
datatable(
  iris2,
  extensions = 'Buttons', options = list(
    dom = 'Bfrtip',
    buttons = c('copy', 'print')
  )
)

复制按钮在剪贴板(mac os x)中给我这个:

    Sepal.Length    Sepal.Width Petal.Length    Petal.Width Species
1   5.1 3.5 1.4 0.2 setosa
2   4.9 3   1.4 0.2 setosa
3   4.7 3.2 1.3 0.2 setosa
4   4.6 3.1 1.5 0.2 setosa
5   5   3.6 1.4 0.2 setosa
6   5.4 3.9 1.7 0.4 setosa
7   4.6 3.4 1.4 0.3 setosa
8   5   3.4 1.5 0.2 setosa
9   4.4 2.9 1.4 0.2 setosa
10  4.9 3.1 1.5 0.1 setosa
11  5.4 3.7 1.5 0.2 setosa
12  4.8 3.4 1.6 0.2 setosa
13  4.8 3   1.4 0.1 setosa
14  4.3 3   1.1 0.1 setosa
15  5.8 4   1.2 0.2 setosa
16  5.7 4.4 1.5 0.4 setosa
17  5.4 3.9 1.3 0.4 setosa
18  5.1 3.5 1.4 0.3 setosa
19  5.7 3.8 1.7 0.3 setosa
20  5.1 3.8 1.5 0.3 setosa

但我想复制格式化的表格,就像我在使用浏览器/鼠标选择,复制,粘贴(例如单词)时获得的表格。例如(但整个表格):

enter image description here

答案

您可以使用R-Markdown和Knitr(R-Markdown and Knitr Tutorial (Part 1))使用xtable包创建表输出

---
title: "How to copy a formatted datatable in r"
date: "March 5, 2018"
output: html_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```

```{r, results="asis",}

library(xtable)

iris_table <- xtable(iris)

print(iris_table, type = 'html', include.rownames = FALSE)
```

你得到像这样的enter image description here输出

以上是关于如何将r中的格式化数据表复制到剪贴板的主要内容,如果未能解决你的问题,请参考以下文章

r 功能:将数据复制到剪贴板以进行Excel

DOM:如何从 Chrome 中的复制事件中获取复制的文本?

如何在 Android 中将文本复制到剪贴板?

如何将 RTF 文本复制到剪贴板以在 excel 中使用

无法将文本从 WKWebview 复制到剪贴板

如何获取复制到剪贴板的数据值并将其设置为android studio中的另一个值