R:tibble::lst名称中不需要的引号
我最近才了解到R:tibble::lst名称中不需要的引号,r,dplyr,tibble,R,Dplyr,Tibble,我最近才了解到tibble::lst,它创建一个列表对象,但会自动命名列表项。我在%%>%%工作流中使用此选项作为快捷方式,该工作流将名称用作map\u dfr中的.id参数,因此自动命名非常有用 然而,这些名字用引号括起来。我注意到这一点是因为它们笨拙地打印在ggplot中的轴刻度标签上,也就是说,我的标签上写着“Hartford”,而不是Hartford 我查看了tidyverse/tibblegithub上的问题,但没有找到任何东西。这是一个错误,还是我做错了什么 库(dplyr) 图书馆
tibble::lst
,它创建一个列表对象,但会自动命名列表项。我在%%>%%
工作流中使用此选项作为快捷方式,该工作流将名称用作map\u dfr
中的.id
参数,因此自动命名非常有用
然而,这些名字用引号括起来。我注意到这一点是因为它们笨拙地打印在ggplot
中的轴刻度标签上,也就是说,我的标签上写着“Hartford”
,而不是Hartford
我查看了tidyverse/tibble
github上的问题,但没有找到任何东西。这是一个错误,还是我做错了什么
库(dplyr)
图书馆(purrr)
城市$`“纽黑文”`
#>[1]“纽黑文”
#>
#>$`“桥接端口”`
#>[1]“桥接端口”
#>
#>$`“哈特福德”`
#>[1]“哈特福德”
城市%>%
map_dfr(~tibble(dummy=rnorm(1)),.id=“city”)
#>#tibble:3 x 2
#>城市假人
#>
#>1“纽黑文”—0.956
#>2“Bridgeport”0.533
#>3“哈特福德”—0.0553
起初我以为这可能是为了逃离《纽黑文》中的空间,但它也发生在单个角色身上:
lst(“a”、“b”、“c”)
#>$`“a”`
#>[1]“a”
#>
#>$`“b”`
#>[1]“b”
#>
#>$`“c”`
#>[1]“c”
当我提供名称时,它就像我所期望的那样工作,但是这破坏了lst
相对于基本列表的优势
lst(a=“a”,b=“b”,c=“c”)
#>一美元
#>[1]“a”
#>
#>b美元
#>[1]“b”
#>
#>$c
#>[1]“c”
我很确定我在与tidyverse相关的软件包上是最新的,但以下是我的会话信息,以防万一:
sessionInfo()
#>R版本3.5.1(2018-07-02)
#>平台:x86_64-apple-darwin15.6.0(64位)
#>运行条件:macOS High Sierra 10.13.6
#>
#>矩阵乘积:默认值
#>BLAS:/Library/Frameworks/R.framework/Versions/3.5/Resources/lib/libRblas.0.dylib
#>LAPACK:/Library/Frameworks/R.framework/Versions/3.5/Resources/lib/libRlapack.dylib
#>
#>区域设置:
#>[1]en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
#>
#>附加基本包:
#>[1]统计图形设备GRUTILS数据集方法库
#>
#>其他随附包裹:
#>[1]purrr_0.2.5 dplyr_0.7.6
#>
#>通过命名空间加载(未附加):
#>[1]Rcpp_0.12.18 knitr_1.20 bindr_0.1.1 Magritr_1.5
#>[5]tidyselect_0.2.4 R6_2.2.2 rlang_0.2.2 fansi_0.3.0
#>[9]stringr_1.3.1工具_3.5.1 utf8_1.1.4 cli_1.0.0
#>[13]htmltools_0.3.6 yaml_2.2.0资产_0.2.0 rprojroot_1.3-2
#>[17]digest_0.6.16 tibble_1.4.2蜡笔_1.3.4 bindrcpp_0.2.2
#>[21]胶水\u 1.3.0评估\u 0.11 R标记\u 1.10 stringi\u 1.2.4
#>[25]编译器_3.5.1支柱_1.3.0后端口_1.1.2 pkgconfig_2.0.2
lst()
实际上用于变量。比如
xa<-"a"
xb<-"b"
xc<-"c"
lst(xa,xb,xc)
# $`xa`
# [1] "a"
# $xb
# [1] "b"
# $xc
# [1] "c"
或者只编写自己的函数
nlist <- function(...) {
setNames(list(...), c(...))
}
cities <- nlist("New Haven", "Bridgeport", "Hartford")
nlist我明白了,谢谢!我想lst并不是我想象中的神奇子弹。
nlist <- function(...) {
setNames(list(...), c(...))
}
cities <- nlist("New Haven", "Bridgeport", "Hartford")