getting data from structure

5 vues (au cours des 30 derniers jours)
Lichay Malka
Lichay Malka le 14 Fév 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)

Réponse acceptée

David Hill
David Hill le 14 Fév 2020
T=struct2table(S);
out=T.speed(:,1);

Plus de réponses (2)

Fangjun Jiang
Fangjun Jiang le 14 Fév 2020
Modifié(e) : Fangjun Jiang le 14 Fév 2020
temp=[S.speed];
out=temp(1:3:end)
% or get all three speeds
Speed=reshape([S.speed],3,[])

Geoff Hayes
Geoff Hayes le 14 Fév 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.

Catégories

En savoir plus sur Biological and Health Sciences dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by