numbering of matrices generation
1 次查看(过去 30 天)
显示 更早的评论
hi if i have
for j=1:3;
B=[A(j,1); A(j,1)]
end;
then how i got the matrices B1 B2 B3 instead of only B .
1 个评论
回答(1 个)
Stephen23
2016-6-23
编辑:Stephen23
2016-6-23
>> A = randi(9,3,1)
A =
6
5
9
>> B1 = A([1,1],1)
B1 =
6
6
>> B2 = A([2,2],1)
B2 =
5
5
>> B3 = A([3,3],1)
B3 =
9
9
But almost always creating numbered variables is a really bad idea. Just use indexing instead, because indexing is faster, more reliable, neater, and easier to read and understand than trying to create variable names dynamically. Read these to know why:
Or even better is to learn how to use MATLAB properly and avoid the loop altogether and use indexing:
>> A([1,1],1)
ans =
6
6
>> A([2,2],1)
ans =
5
5
Or if you really want to split A up into smaller matrices:
>> B = num2cell(A(:,[1,1]).',1);
>> B{1}
ans =
6
6
>> B{2}
ans =
5
5
0 个评论
另请参阅
类别
在 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!