gpt4 book ai didi

r - 考虑到数据集中的重复性,如何将列表转换为保留两列的数据框?

转载 作者:行者123 更新时间:2023-12-01 00:45:51 25 4
gpt4 key购买 nike

我在 R 中有一个列表,如下例所示:

> exemplo
$`c("64735", "254528")`
[1] "703322"

$`100288287`
[1] "100426225"

$`391195`
[1] "707174" "706331"

我正在尝试将此列表转换为数据框仍然是两列。我使用了这个功能:
> Reduce(rbind, Map(cbind, exemplo, gene = names(exemplo)))
gene
[1,] "703322" "c(\"64735\", \"254528\")"
[2,] "100426225" "100288287"
[3,] "707174" "391195"
[4,] "706331" "391195"

但我在第二列仍然有问题。任何想法如何做到。

最佳答案

我们stack “范例”list到 2 列 data.frame ,将其转换为 data.table ( setDT(.. ),按“值”分组,按数字以外的字符拆分“ind”列,unlist , 并删除输出 ('V1') 为空或空白的行。

library(data.table)
setDT(stack(exemplo))[, unlist(strsplit(as.character(ind),
'[^0-9]+')), by = values][V1!='']
# values V1
#1: 703322 64735
#2: 703322 254528
#3: 100426225 100288287
#4: 707174 391195
#5: 706331 391195

关于r - 考虑到数据集中的重复性,如何将列表转换为保留两列的数据框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34498696/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com