getting data from structure

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)

 Risposta accettata

Più risposte (2)

Fangjun Jiang
Fangjun Jiang il 14 Feb 2020
Modificato: Fangjun Jiang il 14 Feb 2020
temp=[S.speed];
out=temp(1:3:end)
% or get all three speeds
Speed=reshape([S.speed],3,[])
Geoff Hayes
Geoff Hayes il 14 Feb 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.

Categorie

Scopri di più su Biological and Health Sciences in Centro assistenza e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by