gpt4 book ai didi

matlab - 将 3d 矩阵 reshape 为 2d 矩阵

转载 作者:太空宇宙 更新时间:2023-11-03 19:07:06 33 4
gpt4 key购买 nike

我在 MATLAB 中有一个 3d 矩阵 (n-by-m-by-t) 表示一段时间内网格中的 n-by-m 测量值.我想要一个二维矩阵,其中空间信息消失了,只剩下 n*m 随着时间 t 的测量值(即:n*m-通过-t)

我该怎么做?

最佳答案

您需要命令 reshape :

假设你的初始矩阵是(只是为了让我得到一些数据):

a=rand(4,6,8);

然后,如果最后两个坐标是空间坐标(时间是 4,m 是 6,n 是 8)你使用:​​

a=reshape(a,[4 48]);

你最终得到一个 4x48 数组。

如果前两个是空间的,最后一个是时间的(m 是 4,n 是 6,时间是 8)你使用:​​

a=reshape(a,[24 8]);

你最终得到一个 24x8 的数组。

这是一个快速的 O(1) 操作(它只是调整数据形状的标题)。还有其他方法可以做到这一点,例如a=a(:,:) 压缩最后两个维度,但 reshape 更快。

关于matlab - 将 3d 矩阵 reshape 为 2d 矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2256925/

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