我想把三个三维矩阵合并成一个思维矩阵,且保持举证的一致性不变,请大家教教我用啥方法!谢谢!
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我想把三个三维矩阵合并成一个思维矩阵,且保持举证的一致性不变,请大家教教我用啥方法!谢谢!相关的知识,希望对你有一定的参考价值。
上面打错了点,是三个三维矩阵合并成一个四维矩阵,且保持矩阵证的一致性不变。特此纠正。
参考技术A 用reshape可以搞定!reshape把指定的矩阵改变形状,但是元素个数不变,
例如,行向量:
a = [1 2 3 4 5 6]
执行下面语句把它变成3行2列:
b = reshape(a,3,2)
执行结果:
b =
1 4
2 5
3 6
若a=[1 2 3
4 5 6
7 8 9]
使用reshpe后想得到b=[1 2 3 4 5 6 7 8 9]
只需要将a转置一下就可以了:
b=reshape(a',1,9)
----------------------------------------------
matlab中的解释如下:
RESHAPE Change size.
RESHAPE(X,M,N) returns the M-by-N matrix whose elements
are taken columnwise from X. An error results if X does
not have M*N elements.
RESHAPE(X,M,N,P,...) returns an N-D array with the same
elements as X but reshaped to have the size M-by-N-by-P-by-...
M*N*P*... must be the same as PROD(SIZE(X)).
RESHAPE(X,[M N P ...]) is the same thing.
RESHAPE(X,...,[],...) calculates the length of the dimension
represented by [], such that the product of the dimensions
equals PROD(SIZE(X)). PROD(SIZE(X)) must be evenly divisible
by the product of the known dimensions. You can use only one
occurrence of [].
In general, RESHAPE(X,SIZ) returns an N-D array with the same
elements as X but reshaped to the size SIZ. PROD(SIZ) must be
the same as PROD(SIZE(X)).追问
用在这里不合适啊,我这里很显然元素的个数是变了的啊!
参考资料:http://blog.sina.com.cn/s/blog_5feb3cea0100lz8b.html
以上是关于我想把三个三维矩阵合并成一个思维矩阵,且保持举证的一致性不变,请大家教教我用啥方法!谢谢!的主要内容,如果未能解决你的问题,请参考以下文章