当前位置:  开发笔记 > 编程语言 > 正文

R是否有类似引用的运算符,如Perl的qw()?

如何解决《R是否有类似引用的运算符,如Perl的qw()?》经验,为你挑选了4个好方法。

任何人都知道R是否有类似引号的运算符,如Perl qw()用于生成字符向量?



1> hadley..:

不,但你可以自己写:

q <- function(...) {
  sapply(match.call()[-1], deparse)
}

只是为了表明它有效:

> q(a, b, c)
[1] "a" "b" "c"



2> flodel..:

我已将此函数添加到我的Rprofile.site文件中(请参阅?Startup您是否不熟悉)

qw <- function(x) unlist(strsplit(x, "[[:space:]]+"))

qw("You can type    text here
    with    linebreaks if you
    wish")
#  [1] "You"        "can"        "type"       "text"      
#  [5] "here"       "with"       "linebreaks" "if"        
#  [9] "you"        "wish"    


当你第一次发布这个答案时,我把它放在个人包装中,我一直都在使用它.这很棒.谢谢.

3> patrickmdnet..:

流行的Hmisc包提供了Cs()执行此操作的功能:

library(Hmisc)
Cs(foo,bar)
[1] "foo" "bar"

它使用与hadley的答案类似的策略:

Cs
function (...) 
{
    if (.SV4. || .R.) 
        as.character(sys.call())[-1]
    else {
        y <- ((sys.frame())[["..."]])[[1]][-1]
        unlist(lapply(y, deparse))
    }
}



4> 小智..:
qw = function(s) unlist(strsplit(s,' '))

推荐阅读
雯颜哥_135
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有