Accessing data in a cell array

2 visualizzazioni (ultimi 30 giorni)
Yongmin
Yongmin il 7 Apr 2015
Modificato: Jeffrey Girard il 8 Apr 2015
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 Commenti
Yongmin
Yongmin il 8 Apr 2015
Modificato: Yongmin il 8 Apr 2015
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.

Accedi per commentare.

Risposte (1)

Jeffrey Girard
Jeffrey Girard il 8 Apr 2015
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 Commenti
Yongmin
Yongmin il 8 Apr 2015
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 il 8 Apr 2015
Modificato: Jeffrey Girard il 8 Apr 2015
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.

Accedi per commentare.

Categorie

Scopri di più su Characters and Strings in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by