splitting up numbers in a cell of a double
7 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hi,
I have a 22x1 double array with numbers such as 0100001 0100100 in each cell. How would i split this up into a 154x1 (22*7) vector with
0
1
0
0
0
0
1
0
1
0
0
1
0
0
etc
0 comentarios
Respuestas (2)
Star Strider
el 13 de Oct. de 2020
Editada: Star Strider
el 13 de Oct. de 2020
EDIT — (13 Oct 2020 at 12:53)
(Question was essentially completely changed.)
To clarify, it is not a double array, because the leading zeros would not be present. Most likely is’s a cell array:
v = {'0100001' '0100100'};
and it’s relatively straightforward (although not at all obvious) to get the result you want:
Out = reshape([v{:}]-'0', [],1)
producing:
Out =
0
1
0
0
0
0
1
0
1
0
0
1
0
0
.
4 comentarios
Star Strider
el 13 de Oct. de 2020
Editada: Star Strider
el 13 de Oct. de 2020
Brace indexing would not work for a double array, only a cell array.
Something is not correct, since a double would not have leading zeros.
It would help to see the actual original data, most likely as a .mat file.
(13:12 UCT) With respect to your edited Comment, I am now thoroughly lost. I have no idea what your data actually are, much less how to deal with what appears to be a moving target.
madhan ravi
el 13 de Oct. de 2020
Editada: madhan ravi
el 13 de Oct. de 2020
Wanted = vertcat(cell_array{:})
%or
Wanted = cat(1, cell_array{:})
2 comentarios
madhan ravi
el 13 de Oct. de 2020
Editada: madhan ravi
el 13 de Oct. de 2020
cell_array = {[0,1,0,0,0,0,1].', [0,1,0,0,1,0,0].'};
Wanted = vertcat(cell_array{:})
%or
Wanted = cat(1, cell_array{:})
Ver también
Categorías
Más información sobre Whos en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!