Saving data from nested loop into final table
Mostra commenti meno recenti
Hello all,
I have this code bellow and its repeated for 6 types of vehicles (the one shown bellow is for buses only), and I want to save data from inside the loop such as (frame_bus, local_time_bus, time_steps_bus, x_bus, y_bus, x_cent_bus, y_cent_bus) so the final table should have columns for each of those variables for all vehicles, something like:
column of "frame" = frame_bus + frame_car + frame_motor + frame_trailer + frame_truck + frame_van
column of local_time = local_time_bus + local_time_car + local_time_motor + local_time_trailer + local_time_truck + local_time_van
column of time_steps = time_steps_bus +time_steps_car +time_steps_motor + time_steps_trailer + time_steps_truck +time_steps_van
column of x_veh = x_bus + x_car + x_motor +x_trailer + x_truck + x_van
column of y_veh = y_bus + y_car +y_motor + y_trailer + y_truck + y_van
column of x_cent_veh = x_cent_bus + x_cent_car +x_cent_motor + x_cent_trailer + x_cent_truck +x_cent_van
column of y_cent_veh = y_cent_bus + y_cent_car +y_cent_motor + y_cent_trailer +y_cent_truck +y_cent_van
column ofveh_speed = speed_bus +speed_car + speed_motor +speed_trailer +speed_truck + speed_van
Thanks a lot in advance
%% Buses
Nbuses = length(busesId);
Nbuses_counted = 0;
for j = 1:Nbuses
buid_j = busesId(j);
busj = data2(data2.trackId == buid_j, :);
if size(busj, 1) == 0
continue;
end
% Get frame
frame_bus = busj.frame;
% frame_bus = [frame_bus];
% Get local_time
local_time_bus = busj.frame/25;
% local_time_bus = [local_time_bus];
% Get time steps
time_steps_bus = (busj.frame(2:end)-busj.frame(1:end-1))./25;
time_steps_bus = [0;time_steps_bus]; % add zero as the first local time step
% get xy points
x_bus = busj.xCenter;
y_bus = busj.yCenter;
% x_bus = [x_bus];
% y_bus = [y_bus];
% Get speed
speed_bus = sqrt(busj.xVelocity.^2 + busj.yVelocity.^2);
% speed_bus = [speed_bus];
% Get centroid
x_cent_bus = busj.width/2;
y_cent_bus = busj.length/2;
% x_cent_bus = [x_cent_bus];
% y_cent_bus = [y_cent_bus];
interacting_vehicles{v} = sprintf("veh %d", buid_j);
v = v + 1;
end
uniqueID{uid} = sprintf("R%dB%d", fid, bid);
uid = uid + 1;
end
Risposta accettata
Più risposte (0)
Categorie
Scopri di più su Multidimensional Arrays in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!