Open multiple timetables within an array into one matrix

조회 수: 3 (최근 30일)
Maksim Sorin
Maksim Sorin 2022년 2월 3일
댓글: Maksim Sorin 2022년 2월 3일
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.

채택된 답변

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

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Turlough Hughes
Turlough Hughes 2022년 2월 3일
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.

카테고리

Help CenterFile Exchange에서 MATLAB에 대해 자세히 알아보기

제품


릴리스

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by