getting data from structure

1 visualización (últimos 30 días)
Lichay Malka
Lichay Malka el 14 de Feb. de 2020
Respondida: Geoff Hayes el 14 de Feb. de 2020
Hi!
I have a structure set up like so:
S(1).speed = [x1 y1 z1];
S(2).speed = [x2 y2 z2];
S(3).speed = [x3 y3 z3];
and so on...
for every entry, the speed data is separated into x, y, and z axis in that order.
how can i, for example, get a vector containing only the speed in the x axis of all the entries? (the first object in every entry)

Respuesta aceptada

David Hill
David Hill el 14 de Feb. de 2020
T=struct2table(S);
out=T.speed(:,1);

Más respuestas (2)

Fangjun Jiang
Fangjun Jiang el 14 de Feb. de 2020
Editada: Fangjun Jiang el 14 de Feb. de 2020
temp=[S.speed];
out=temp(1:3:end)
% or get all three speeds
Speed=reshape([S.speed],3,[])

Geoff Hayes
Geoff Hayes el 14 de Feb. de 2020
Lichay - you could try something like
speedX = arrayfun(@(k)S(k).speed(1), 1:length(S))
where we use arrayfun to iterate over each element of S and extract the speed in x.

Categorías

Más información sobre Statistics and Machine Learning Toolbox en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by