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

将Dataframe转换为带自定义命名向量的嵌套列表

将R数据框转换为指定嵌套列表结构

你可以通过以下几种简洁的方法实现需求,把数据框转换成列名作为顶层元素、列值嵌套在values子列表中的结构:

方法1:Base R 原生实现

利用lapply遍历数据框的每一列,将每列向量包装到values列表元素中,原生方法无需额外依赖:

# 定义示例数据框
library(tibble)
df <- tibble(col1 = c("a", "b", "c", "d"), 
             col2 = c(1, 2, 3, 4))

# 转换为目标嵌套列表
result <- lapply(df, function(col) list(values = col))

输出结果与需求一致:

result
#> $col1
#> $col1$values
#> [1] "a" "b" "c" "d"
#> 
#> $col2
#> $col2$values
#> [1] 1 2 3 4

方法2:Tidyverse(purrr)实现

如果你习惯使用tidyverse工具链,purrr::map可以提供更简洁的语法,且自动保留原列名:

library(purrr)
result <- map(df, ~list(values = .x))

验证结构

可以用str()查看最终列表的嵌套结构,确认符合要求:

str(result)
#> List of 2
#>  $ col1:List of 1
#>   ..$ values: chr [1:4] "a" "b" "c" "d"
#>  $ col2:List of 1
#>   ..$ values: num [1:4] 1 2 3 4

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 16:53:24