transform a vector to a cell array
Ältere Kommentare anzeigen
Hi,
c=[5 7 1 9 10]; I want to create a cell from this vector as:
d={[5 7 1] [7 1 9] [1 9 10]};
Thanks in advance.
Antworten (2)
Azzi Abdelmalek
am 29 Dez. 2013
Bearbeitet: Azzi Abdelmalek
am 29 Dez. 2013
c=[5 7 1 9 10];
m=3;
out=arrayfun(@(x) c(x:x+m-1),1:numel(c)-m+1,'un',0)
4 Kommentare
allnab
am 30 Dez. 2013
allnab
am 30 Dez. 2013
Azzi Abdelmalek
am 30 Dez. 2013
What do you mean? The result is exactly what you asked for. to see the result type
celldisp(out)
allnab
am 30 Dez. 2013
Andrei Bobrov
am 29 Dez. 2013
d = num2cell(c(hankel(1:3,3:numel(c))),2)
3 Kommentare
allnab
am 30 Dez. 2013
Jos (10584)
am 30 Dez. 2013
This error is shown when the second input to hanker is empty:
hankel(1:3,[])
In the code above this occurs because,
- 3:numel(c) is empty, because,
- numel(c) is less then 3, so,
check the contents of c !
allnab
am 30 Dez. 2013
Kategorien
Mehr zu Matrices and Arrays finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!