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

如何将R中字符串向量对应的data.frame转为命名列表?

解决R中通过字符串向量创建命名data.frame列表的问题

推荐方案:使用mget()函数

这是最简洁高效的方法,mget()会直接根据字符串向量从当前环境中提取对应的对象,并且自动将列表元素命名为对应的字符串:

df <- c('a','b','c','d','e')
ld <- mget(df)

你可以通过以下代码验证结果:

# 查看列表的结构和元素名称
str(ld)
# 检查第一个列表元素的内容
head(ld$a)

你的原有代码问题分析

你之前的代码逻辑有误:strsplit(aa, ",")[[1]]返回的是字符向量,而eval(parse(text = ...))只能解析单个表达式字符串,因此最终只会提取第一个对象,且无法正确生成命名列表。

备选方案:lapply() + get()

如果需要手动遍历处理,可以用lapply循环每个字符串名称,通过get()获取对应对象,再手动设置列表名称:

ld <- lapply(df, get)
names(ld) <- df

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 20:35:31