gpt4 book ai didi

r - 如何在 R 中创建两个列表的最小列表?

转载 作者:行者123 更新时间:2023-11-28 20:28:37 25 4
gpt4 key购买 nike

我正在尝试根据线程 How to make a great R reproducible example? 在 R 中创建两个列表的最小列表但它不包括作为基本示例的列表列表。想要如下结构的最小数据样本,其中B长度可以最小化但必须是异构的

List of 2
$ :'data.frame': 541650 obs. of 2 variables:
..$ V1: num [1:541650] -0.21 -0.205 -0.225 -0.22 -0.21 -0.19 -0.205 -0.205 -0.205 -0.205 ...
..$ V2: num [1:541650] -0.245 -0.22 -0.2 -0.2 -0.195 -0.2 -0.19 -0.185 -0.18 -0.185 ...
$ :'data.frame': 426098 obs. of 2 variables:
..$ V1: num [1:426098] -0.285 -0.285 -0.185 -0.285 -0.385 -0.305 -0.305 -0.125 -0.015 -0.285 ...
..$ V2: num [1:426098] -0.445 -0.6 -0.815 -0.665 -0.49 -0.68 -0.555 -0.755 -0.795 -0.405 ...

执行dput(files),你会得到太大的示例数据。做reproduce(files),同样的情况。我也试过 dput(head(files, 5)) 但是到一个列表然后只返回 5 位数字。伪代码

  • 构造两个列表 B(1,2) 的列表 A,其中 B(1,2) 的长度变化使得

    length(B(1)_i) = length(B(2)_i) 
  • 最小化 B(1,2) 的长度,但保持后续 B 的异构长度

想要的输出结构

List of 2
$ data.frame 11 obs. of 2 variables
$ V1: num [1:11] -0.21 -0.205 ...
$ V2: num [1.11] -0.245 -0.22 ...
$ data.frame 7 obs. of 2 variables
$ V1: num [1:7] -0.285 -0.286 ...
$ V2: num [1.7] -0.445 -0.6 ...

R: 3.3.1
操作系统:Debian 8.5

最佳答案

这可以通过多种方式完成。创建两个 data.frame 并将其放入 list

lst <- list(data.frame(V1 = rnorm(11), V2 = rnorm(11)), 
data.frame(V1 = rnorm(7), V2 = rnorm(7)))

或者如果要创建很多data.frame,使用循环

lst1 <- lapply(c(11, 7), function(n) data.frame(V1 = rnorm(n), 
V2 = rnorm(n)))

关于r - 如何在 R 中创建两个列表的最小列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40569084/

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