gpt4 book ai didi

r - do.call 和 rbind 用于以订单为新列名的列表

转载 作者:行者123 更新时间:2023-12-04 09:40:16 25 4
gpt4 key购买 nike

我无法重现此示例,但我有一个由 253 个对象组成的列表,每个对象有 4 列,长度为 3000:

> str(data)
List of 253
$ : num [1:3000, 1:4] 0.269 0.201 0.155 0.329 0.307 ...
$ : num [1:3000, 1:4] 0.269 0.203 0.156 0.329 0.307 ...
$ : num [1:3000, 1:4] 0.269 0.204 0.156 0.329 0.307 ...
$ : num [1:3000, 1:4] 0.27 0.205 0.156 0.329 0.307 ...

我正在尝试使用 do.call 和 rbind 来创建一个包含四列和另一列的新对象,该列的列表编号如下所示:
head(new)
Name [,1] [,2] [,3] [,4]
[1,] 1 0.269077013009290 0.2522168552880047 0.262594373389746 0.216111758312960
[2,] 1 0.201348056547152 0.2611904119569095 0.264782271654359 0.272679259841580
[3,] 1 0.155481831431131 0.2599908556717349 0.412742657066444 0.171784655830690
[4,] 1 0.329421949966686 0.0968555482105167 0.365492803829526 0.208229697993272
[5,] 1 0.306985894860771 0.1407298652926539 0.331197510871706 0.221086728974869
[6,] 1 0.147101456518243 0.1521556602567531 0.402434842158681 0.298308041066323

目前使用以下代码给出:
 new <- do.call(rbind, data)
head (new)
[,1] [,2] [,3] [,4]
[1,] 0.269077013009290 0.2522168552880047 0.262594373389746 0.216111758312960
[2,] 0.201348056547152 0.2611904119569095 0.264782271654359 0.272679259841580
[3,] 0.155481831431131 0.2599908556717349 0.412742657066444 0.171784655830690
[4,] 0.329421949966686 0.0968555482105167 0.365492803829526 0.208229697993272
[5,] 0.306985894860771 0.1407298652926539 0.331197510871706 0.221086728974869
[6,] 0.147101456518243 0.1521556602567531 0.402434842158681 0.298308041066323

关于如何添加“名称”列的任何想法将不胜感激!

最佳答案

我们可以使用 Map 创建一个“名称”列然后做 rbind

new <-  do.call(rbind, Map(cbind, Name = seq_along(data), data))

关于r - do.call 和 rbind 用于以订单为新列名的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62363802/

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