如何从R上刻录到剪贴板上的MAC(How to write from R to the clipbo

2019-07-18 19:30发布

我试图用write.table功能写信给我一个Mac OS系统剪贴板上。 从其他线程,我试过

data <- rbind(c(1,1,2,3), c(1,1, 3, 4), c(1,4,6,7))
clip <- pipe("pbcopy", "w")                       
write.table(data, file="clip")                               
close(clip)

此代码不会给出任何错误消息,但也什么都不复制到剪贴板。 有什么建议?

Answer 1:

我没有任何机器在OS X下进行测试,但我认为你应该使用刚刚clip ,而不是"clip"

data <- rbind(c(1,1,2,3), c(1,1, 3, 4), c(1,4,6,7))
clip <- pipe("pbcopy", "w")                       
write.table(data, file=clip)                               
close(clip)

这里clip是R对象。

如果你传递一个字符串“夹”的file参数R将认为它是一个文件名,而不是在剪贴板中找到你的数据,你会发现一个文件在你[R被称为“夹”会议工作目录里面的数据。



Answer 2:

您可以使用Kmisc包,它包含剪贴板I / O(读/写)的MULT iplatform 2种功能。

data <- data.frame(x1 = c(1,1,2,3), x2= c(1,1, 3, 4), x3= c(1,4,6,7))
write.cb(data)               ## wrapper to write.table in pipe("pbcopy") on MAC 
dat <- read.cb(header=T)     ## wrapper to read.table from pipe("pbpaste") on MAC
dat
  x1 x2 x3
1  1  1  1
2  1  1  4
3  2  3  6
4  3  4  7


Answer 3:

这是一个老问题,但它仍然是一个最高命中时,我正在寻找如何获得到剪贴板的东西。

现在有比任何这里的答案一个更好的解决方案: clipr包。

clipr::write_clip()是你所需要的。 它在Windows,OS X,和X11。

从帮助文件:“write_clip()试图聪明地以有用的方式书写对象如果传递了data.frame或基质,它会使用粘贴write.table到外部电子表格程序格式化,否则将会强制。的对象的字符向量。自动将检查对象的类型,否则表或字符可以被明确指定。”

我还写了一个小的辅助函数来获得最后的结果到剪贴板:

wc <- function(x = .Last.value) {
  clipr::write_clip(x)
}


Answer 4:

我发现这个漂亮的代码,直接从剪贴板从马可·Ghislanzoni答案导入Mac上的数据

诀窍是使用管道文件。 在R管材文件可以通过管道功能来解决。 接下来,你需要知道,对应于Mac的剪贴板,这是“pbpaste”管道文件的正确名称。

一旦你把所有的一起,你有一个函数read.table的命令的正确语法:

从Mac OS X clipboardR导入数据

data <- read.table(pipe("pbpaste"), sep="\t", header=T)


Answer 5:

在Mac OS X试试这个:

copy_to_clipboard = function(x,sep="\t",col.names=T,...) { 
  write.table(x
             ,file = pipe("pbcopy")
             ,sep=sep
             ,col.names = col.names
             ,row.names = F
             ,quote = F,...)
}

还有这个:

paste_from_clipboard = function(sep="\t",header=T,...) {       
  read.table(pipe("pbpaste")
            ,sep=sep
            ,header=header,...) 
}


Answer 6:

我只是写一些普通的功能 ,对于Windows和Mac上工作。 使用相同的参数与Windows版本,他们使用的字符向量作为输入和输出。



文章来源: How to write from R to the clipboard on a mac
标签: r clipboard