You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R中创建元素为相同双值向量的命名列表?

解决方案

Base R 实现

你可以用replicate生成重复的向量列表,再用setNames指定名称:

list_vec <- c('item1', 'item2', 'item3')
val_vec <- c(0.5, 3)

result_list <- setNames(replicate(length(list_vec), val_vec, simplify = FALSE), list_vec)

replicate的simplify = FALSE参数确保返回的是列表而非矩阵,每个元素都是独立的val_vec向量。

也可以用lapply实现,逻辑类似:

result_list <- setNames(lapply(list_vec, function(x) val_vec), list_vec)

tidyverse 实现

借助purrr包的map函数,结合管道和set_names可以更简洁地完成:

library(purrr)

list_vec <- c('item1', 'item2', 'item3')
val_vec <- c(0.5, 3)

result_list <- map(list_vec, ~val_vec) %>% set_names(list_vec)

运行上述代码后,输出的列表结构完全符合预期:

$item1
[1] 0.5  3

$item2
[1] 0.5  3

$item3
[1] 0.5  3

内容的提问来源于stack exchange,提问作者Jon_doing_data

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 12:52:02