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

如何将Data Frame/Tibble转换为命名向量列表?

把Tibble转换为命名列表的方法

这里有几种简洁的方式可以将你的tibble转换成以seq_name为名称、对应peptide为元素的命名列表:

方法1:Base R的split()函数

这是最直接的方法,利用split()按分组列拆分目标列,自动生成命名列表:

# 生成目标列表
result_list <- split(dat$peptide, dat$seq_name)

# 查看结果
result_list
#> $Peptide_set1.r1
#> [1] "KSKLRHGC"
#> 
#> $Peptide_set2.r1
#> [1] "AAYVYVNQF"

方法2:Tidyverse工具链

如果你习惯用tidyverse的语法,可以结合deframe()和as.list()来实现:

library(tidyverse)

result_list <- dat %>%
  deframe() %>%  # 先转换为命名向量(名称是seq_name,值是peptide)
  as.list()      # 再将命名向量转为列表

或者用更直观的分组拆分方式:

result_list <- dat %>%
  group_split(seq_name, .keep = FALSE) %>%  # 按seq_name分组拆分
  set_names(dat$seq_name) %>%               # 给每个分组设置名称
  map(unlist)                               # 把每个分组的tibble转为字符串向量

两种方法最终都会得到你预期的列表结构~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 09:54:05