如何通过标签向量和数值向量创建带命名的R语言向量?
你可以用R内置的setNames()函数实现需求,单行写法如下:
c <- setNames(b, a)
补充说明
- 你之前尝试的
c(a = b)写法不符合预期,是因为R会将赋值符号左侧的a直接识别为固定的名称字符串,不会读取a变量中存储的标签值。 setNames()属于R基础函数无需额外安装包,作用就是将第二个参数传入的向量值,作为第一个参数传入的向量的元素名,完全匹配你的使用需求。
你也可以用直接操作名称属性的等价写法,效果完全一致:
c <- `names<-`(b, a)
两种写法运行后输出的c都符合你预期的结构:
Label 1 Label 2 1 2
内容的提问来源于stack exchange,提问作者user239092
相关产品推荐
相关产品推荐

