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")