gpt4 book ai didi

r - 使用列表名称作为一列中的值列出到小标题中

转载 作者:行者123 更新时间:2023-12-04 12:07:28 26 4
gpt4 key购买 nike

我想转换这样的列表:

l <- list(x = c(1, 2), y = c(3, 4, 5))

变成这样的小块:
 Name  Value 
x 1
x 2
y 3
y 4
y 5

最佳答案

我认为没有什么比使用基础 R 中的 stack 函数更容易的了:

df <- stack(l)

给你一个数据框:

> df
values ind
1 1 x
2 2 x
3 3 y
4 4 y
5 5 y


因为您要求 tibble 作为输出,所以您可以执行 as_tibble(df)(来自 tibble -package)来获得它。

或者更直接: df <- as.tibble(stack(l))

另一种纯基础 R 方法:
df <- data.frame(ind = rep(names(l), lengths(l)), value = unlist(l), row.names = NULL)

这给出了类似的结果:

> df
ind value
1 x 1
2 x 2
3 y 3
4 y 4
5 y 5

row.names = NULL 不一定需要,但将行号作为行名。

关于r - 使用列表名称作为一列中的值列出到小标题中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46322096/

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