gpt4 book ai didi

r - 在 R 中将 3 维数据展平为拉长的 2-D

转载 作者:行者123 更新时间:2023-12-05 06:45:23 24 4
gpt4 key购买 nike

我有暗淡的 10,5,2 (t,x,y) 数据,我想将其转换为 10*5,3 维度。即,将每个 t 帧附加到具有 t 值的 (x,y) 帧。

例如:

data[1,,]=
x y
1 2
1 3

data[2,,]=
x y
5 2
1 6

我想像这样将这些数据转换为展平数组

x y t
1 2 1
1 3 1
5 2 2
1 6 2

我正在寻找是否已经有 R 函数来执行此操作,或者我会通过循环每个 t 数组并将重新创建的数组添加到主数组的底部来完成此操作。

最佳答案

a <- array(1:8, c(2,2,2))
a[1,,]
# [,1] [,2]
#[1,] 1 5
#[2,] 3 7

a[2,,]
# [,1] [,2]
#[1,] 2 6
#[2,] 4 8

m <- matrix(aperm(a, c( 2, 1, 3)), nrow=prod(dim(a)[2:3]))
cbind(m, rep(seq_len(dim(a)[2]), each=dim(a)[1]))
# [,1] [,2] [,3]
#[1,] 1 5 1
#[2,] 3 7 1
#[3,] 2 6 2
#[4,] 4 8 2

关于r - 在 R 中将 3 维数据展平为拉长的 2-D,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24341687/

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