gpt4 book ai didi

R:将 data.frame 转换为带有 data.frame 标签的列表

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

我有以下数据框:

df0 <- data.frame(N1    = c("A","B")
, N2 =c("C","C")
, value =c(10,10)
)
> df0
N1 N2 value
1 A C 10
2 B C 10

我想转换成具有以下结构的列表:

list0 <- list( A= list( C= 10 )
, B= list( C= 10 )
)
> list0
$A
$A$C
[1] 10

$B
$B$C
[1] 10

> str(list0)
List of 2
$ A:List of 1
..$ C: num 10
$ B:List of 1
..$ C: num 10

有什么想法吗?我的问题是获取标签(名称)而不是索引。

最佳答案

你可以使用apply函数:

list0 <- setNames(apply(df0, 1, function(row) {
a <- list()
a[[row[2]]] <- as.numeric(row[3])
return (a)
}), df0$N1)
list0
$A
$A$C
[1] 10


$B
$B$C
[1] 10


str(list0)
List of 2
$ A:List of 1
..$ C: num 10
$ B:List of 1
..$ C: num 10

关于R:将 data.frame 转换为带有 data.frame 标签的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37420704/

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