【发布时间】:2021-03-10 15:12:51
【问题描述】:
我想在 n x 12 维度的矩阵中重新排列数据,其中 n 是年,12 是月。
我的目标是生成一个新矩阵。
旧矩阵:
4 11 5 4 5 6 7 Nan 9 10 11 7
13 14 15 5 17 4 19 20 21 22 23 24
新矩阵,版本 1:
Nan Nan 4 11 5 4 5 6 7 Nan 9 10
11 7 13 14 15 5 17 4 19 20 21 22
新矩阵,版本 2:
4 5 6 7 Nan 9 10 11 7 13 14 15
5 17 4 19 20 21 22 Nan Nan Nan Nan Nan
我希望有时间向前和向后移动的选项。
非常感谢您的帮助。 提前致谢。
【问题讨论】:
-
您尝试了哪些方法?你的尝试哪里出错了?
-
我想使用 lagmatrix 功能,但它需要安装一个不是免费的工具箱。然后我找到了 circshift 和 timeshift,但我不知道如何正确地应用它来达到我的目的。
-
您可以使用
circshift,但您必须将二维数组转换为一维向量、移位,然后将 NaN 放在适当的位置。不过,您可以使用数组索引来完成同样的事情。当然,最后您必须将数据重新整形为二维数组。但如果我要进行大量转换,我可能只是将数据存储为列向量,并仅在必要时对其进行整形。这有帮助吗?