Filter löschen
Filter löschen

get a subcell from a bigger cell

8 Ansichten (letzte 30 Tage)
Miguel Reina
Miguel Reina am 5 Feb. 2018
Kommentiert: Jan am 5 Feb. 2018
I have a cell of 10x9 named 'a', each index contains a string. How can i create a sub cell if i have two vectors (f,c) with the indexes that i want. e.g. imagine a 2x3 cell a and indexes f and c
a={('this'), ('is') ,('big');('he') ,('buys') ,('it')}
f=[1,1,2];
c=[1,2,3];
the result i want is b={('this'), ('is');('it'),('')}
  3 Kommentare
Miguel Reina
Miguel Reina am 5 Feb. 2018
the indexes are found following a 2x3 matrix said
b=[1 1 0;0 0 1]
in which 1 indicates the "correct" words following a criteria. so to find the indexes of those words i used
[c,f]=find(b==1);
Jan
Jan am 5 Feb. 2018
Wouldn't it be easier to apply directly:
a(b)

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Guillaume
Guillaume am 5 Feb. 2018
Use ind2sub:
a(ind2sub(size(a), f, c))
The result will be 1x3 vector not an arbitrary sized array.

Kategorien

Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by