Cell Array, Example From Manual

2 次查看(过去 30 天)
I'm working on an example in the fundamental manual. I'm note sure if I understand what is happening.
Create a cell array
C = {'one','two','three';1,2,3},
{'one'} {'two'} {'three'}
{[ 1]} {[ 2]} {[ 3]}
Create a subset of the cell array
upperLeft = C(1:2,1:2)
{'one'} {'two'}
{[ 1]} {[ 2]}
I tried to do as above in creating the subset. I was thinking the code below should copy the cell array but it gives an error. I'm not sure I'm understanding what is going on when I do this.
CopyArray = C(1:2,1:2,1:2)
Any help will be appreciated,
Thanks
D

采纳的回答

James Tursa
James Tursa 2020-4-28
编辑:James Tursa 2020-4-28
The variable C is only a 2D variable having two dimensions. You have requested indexing into a third dimension
with that last 1:2, hence the error. Similar to doing this:
>> M = [1 2 3;4 5 6]
M =
1 2 3
4 5 6
>> M(2,3)
ans =
6
>> M(2,3,1:2)
Index exceeds matrix dimensions.
What was the expected result of what you tried? Maybe we can guide you to the correct syntax to get the result you wanted.
  4 个评论
James Tursa
James Tursa 2020-4-28
编辑:James Tursa 2020-4-28
Yes, C(1:2,1:3) is the subset of C containing rows 1-2 and columns 1-3 of C.
Darnell Gawdin
Darnell Gawdin 2020-4-28
thanks for your help, I needed a little push.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by