How I can append matrices of different dimensions in another matrix?
3 次查看(过去 30 天)
显示 更早的评论
I want to make a empty matrix in which i want to append matrix of dimensions 3*1,4*1, 3*1,2*1 etc.
It is better if I am able to append through for loop because I have 8-10 matrix of dimensions 3*1,4*1, 3*1,2*1).
Please suggest by showing or refering example.
Thanks
2 个评论
David Fletcher
2021-5-14
Fundamentally, I suspect what you want to do isn't possible (at least not with a matrix) - you will need to use a cell array see here:
采纳的回答
Stephan
2021-5-14
A = randi(10, 3, 1)
B = rand(4, 1)
C = randi(10,5,1)
D = vertcat(A,B,C)
2 个评论
Stephan
2021-5-14
编辑:Stephan
2021-5-14
I dont recommend to do so, because you have to transpose them additionally, which doesnt make much sense. If you need a row vector you could also transpose the result of my code instead of transposing all the elements and then use horzcat:
A = randi(10, 3, 1);
B = rand(4, 1);
C = randi(10,5,1);
D = (vertcat(A,B,C)).'
Maybe you might want to use a cell array:
D = {A, B, C}
There are a many ways to do what you want.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!