create 3-dimension matrix
2 次查看(过去 30 天)
显示 更早的评论
Hi
A Question please.
I want to write a function that create a 3-dimension matrix based on two 2-demnesion matrices.
I named this new matrix C.
I write something but when I run it give me "ans" but I want to give me matrix C.
this is my simple code
function Model=Base()
load('test1.mat');
%z1=[90 50 159;148 120 31;142 3 74];
%z2=[13 155 108;141 40 102;109 119 144];
[m,n]=size(z1);
for k=1
c(:,:,k)=z1;
end
for k=2
c(:,:,k)=z2;
end
Model.c=c
end
What is rong in my code please?
Thank you
采纳的回答
Shoaibur Rahman
2015-1-1
If you use your current code, then call your function create1() (from command window, or in another m-file):
c = create1();
This will show c in your workspace as a struct.
But if want to see c as double instead of struct, then modify the last line of your code. Replace Model.c=c by Model = c
Then type c = create1() in your command window, which will show c in the workspace.
3 个评论
Shoaibur Rahman
2015-1-1
You you can. But in that case you cannot use function here. Instead, use just a part of your code, and save and run it.
z1=[90 50 159;148 120 31;142 3 74];
z2=[13 155 108;141 40 102;109 119 144];
c=cat(3,z1,z2)
更多回答(1 个)
Azzi Abdelmalek
2015-1-1
c=cat(3,z1,z2)
5 个评论
Azzi Abdelmalek
2015-1-1
But your function return just the variable model , in this case just type
Model
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!