Accessing data in a cell array

4 次查看(过去 30 天)
Yongmin
Yongmin 2015-4-7
Hello, I have a (1x7) cell array that contains as follows:
cell_array =
Columns 1 through 4
[10000x8 char] [10000x6 char] [10000x6 char] [10000x1 double]
Columns 5 through 7
[10000x64 char] [10000x10 char] [10000x1 int]
I want to access some part of cell_array, i.e. the 100 line of data in cell_array from row 2101 to row 2200. Would you please help me how to refer those elements of cell_array?
Thanks a lot!
  2 个评论
Yongmin
Yongmin 2015-4-8
编辑:Yongmin 2015-4-8
Thanks for your advice. However, would you please explain more? As in case of database, I would like to select all columns of some records (rows) only. In case of a cell array, I cannot use the following command:
cell_array(1,1:7){2101:2200,:}
This gives an error, "()-index must appear last in an index expression."
How can I do what I want? Thanks in advance.

请先登录,再进行评论。

回答(1 个)

Jeffrey Girard
Jeffrey Girard 2015-4-8
Hopefully this will give you some clues:
c = cell(1,2);
c{1} = ['abcd';'efgh'];
c{2} = [1,2,3,4;5,6,7,8];
c =
[2x4 char] [2x4 double]
string = c{1}(2,2:3)
string =
fg
number = c{2}(1:2,3:4)
number =
3 4
7 8
  2 个评论
Yongmin
Yongmin 2015-4-8
Thanks a lot for your answer.
BTW is there any way to handle strings and numbers together?
I understand from your answer that it is not possible to handle strings and numbers together within a cell.
Please clarify this point. Thank you!
Jeffrey Girard
Jeffrey Girard 2015-4-8
编辑:Jeffrey Girard 2015-4-8
MATLAB really wants you to keep strings and numbers separate. Your options are to convert the numbers to strings (e.g., num2str() ) or write them both to cells.

请先登录,再进行评论。

类别

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

产品

Community Treasure Hunt

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

Start Hunting!

Translated by