Reshape Nx1 struct with field of Mx1 elements to N*Mx1 vector
6 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Sabyrzhan Tasbolatov
el 22 de Mayo de 2022
Comentada: Stephen23
el 22 de Mayo de 2022
I have a struct A of [1000x1] size. There is a field "bar" which has [100x1] elements.
I want to have 1 variable, let's say B, which will be [1000*100x1] of "bar" elements.
How can I do it without iterating a struct and appending on some prepared zeroed vector? Can reshape do it?
1 comentario
Stephen23
el 22 de Mayo de 2022
"How can I do it without iterating a struct and appending on some prepared zeroed vector? Can reshape do it?!
No, but a comma-separated list can do it:
Respuesta aceptada
Bruno Luong
el 22 de Mayo de 2022
Editada: Bruno Luong
el 22 de Mayo de 2022
Something like
B = cat(1,A.bar)
0 comentarios
Más respuestas (1)
MJFcoNaN
el 22 de Mayo de 2022
This is an example:
bar=rand(100,1)
A=struct;
A.bar=bar;
% copy A.bar to all 1000 elements
A(2:1000,1)=A(1)
% table is a good intermediate form
tbl=struct2table(A);
B=cell2mat(cellfun(@transpose, tbl.bar, 'UniformOutput', false))
Ver también
Categorías
Más información sobre Structures en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!