Calculations for Each Table in a Cell

1 Ansicht (letzte 30 Tage)
Isabelle Museck
Isabelle Museck am 3 Jun. 2024
Kommentiert: Isabelle Museck am 3 Jun. 2024
Hello I have displacement and time data from 10 different trials stored as tables in a 10x1 cell. I am trying to calculate the velocity for each of the trials and store the data as a DOUBLE rather than a a table in a 10x1 cell.
Say CoPyData is the 10x1 cell with the 10 tables containing the time and displacement data. My code so far is:
CoPvAll = {}
for i =1:numel(CoPyData)
Trial = CoPyData{i,1}
CoPv_y = diff(Trial.Displacement)./diff(Trial.Time)
CoPv = [zeros(1);CoPv_y]
T = addvars(Trial,CoPv)
CoPvAll = {CoPvAll,T}
end
however this code is not correctly storing the data/calculated velocity back into a 10x1 cell and I am not sure how to convert the data from tables to doubles. Any help is greatly appreciated.

Akzeptierte Antwort

Matt J
Matt J am 3 Jun. 2024
Bearbeitet: Matt J am 3 Jun. 2024
for i =1:numel(CoPyData)
Trial = CoPyData{i};
CoPv_y = diff(Trial.Displacement)./diff(Trial.Time);
CoPv = [zeros(1);CoPv_y];
CoPyData{i} = addvars(Trial,CoPv);
end
  3 Kommentare
Matt J
Matt J am 3 Jun. 2024
Assuming your table data is purely numeric, you can do as follows,
for i = 1:numel(CoPyData)
Trial = CoPyData{i};
CoPv_y = diff(Trial.Displacement)./diff(Trial.Time);
CoPv = [zeros(1);CoPv_y];
T = addvars(Trial,CoPv);
CoPyData{i}= double(T{:,:});
end
Isabelle Museck
Isabelle Museck am 3 Jun. 2024
Thank you so much!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Characters and Strings finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by