getting data from structure

1 Ansicht (letzte 30 Tage)
Lichay Malka
Lichay Malka am 14 Feb. 2020
Beantwortet: Geoff Hayes am 14 Feb. 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)

Akzeptierte Antwort

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

Weitere Antworten (2)

Fangjun Jiang
Fangjun Jiang am 14 Feb. 2020
Bearbeitet: Fangjun Jiang am 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 am 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.

Kategorien

Mehr zu Statistics and Machine Learning Toolbox finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by