Open multiple timetables within an array into one matrix

2 Ansichten (letzte 30 Tage)
Hello all, I am working on a filtering script for some CAN data I am collecting. Currently, my code takes data from multiple BLF files and stores the timetables from the blf files in an array. The files are all sequential meaning that Part zero starts at 0 seconds ends at 300 seconds, then part 1 starts at 300 and ends at 600 and so on. My question is how can I "expand" the timetables in the array to essenitally end up with one giant matrix. I've tried using m=matrixtm{:, :}; but that only opens one cell at a time, and I need all the cells open into one big matrix.

Akzeptierte Antwort

David Hill
David Hill am 3 Feb. 2022
A simple loop should do the trick.
T=yourCell{1};
for k=2:length(yourCell)
T=[T;yourCell{k}];
end
  1 Kommentar
Maksim Sorin
Maksim Sorin am 3 Feb. 2022
Thank you so much! No idea why i was struggling to figure this one out so much.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Turlough Hughes
Turlough Hughes am 3 Feb. 2022
Let's call the cell array data, then you can vertically concatentate as follows:
oneBigTable = vertcat(data{:});
If you want it as a matrix:
M = oneBigTable{:,:};
Note, M doesn't include the time data. If you want to add that in then I suggest that you use posixtime.

Kategorien

Mehr zu MATLAB finden Sie in Help Center und File Exchange

Produkte


Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by