Go to the MLX, M, PDF, or HTML version of this file. Go back to fan’s MEconTools Package, Matlab Code Examples Repository (bookdown site), or Math for Econ with Matlab Repository (bookdown site).
There is a table with simulation results, and a table with data information. Join together with common keys.
First generate the simulation table.
% Make N by 2 matrix of fieldname + value type
mt_st_variable_names_types = [...
["year", "double"];["category", "string"];["rho", "double"]; ...
["numberWorkersSimu", "logical"]; ["meanWageSimu", "double"]];
% Make table using fieldnames & value types from above
tb_solution = table('Size',[0,size(mt_st_variable_names_types,1)],...
'VariableNames', mt_st_variable_names_types(:,1),...
'VariableTypes', mt_st_variable_names_types(:,2));
% Table with data to be merged
tb_solution = [tb_solution;...
{1, 'C001', 0.50, 5.5, 6.6}; {2, 'C002', 0.50, 3.3, 4.4}; ...
{1, 'C001', 0.25, 2.5, 3.6}; {2, 'C002', 0.25, 0.3, 1.4}];
disp(tb_solution);
year category rho numberWorkersSimu meanWageSimu
____ ________ ____ _________________ ____________
1 "C001" 0.5 5.5 6.6
2 "C002" 0.5 3.3 4.4
1 "C001" 0.25 2.5 3.6
2 "C002" 0.25 0.3 1.4
Second generate the data table.
% Make N by 2 matrix of fieldname + value type
mt_st_variable_names_types = [...
["year", "double"];["category", "string"]; ...
["numberWorkersData", "logical"]; ["meanWageData", "double"]];
% Make table using fieldnames & value types from above
tb_data = table('Size',[0,size(mt_st_variable_names_types,1)],...
'VariableNames', mt_st_variable_names_types(:,1),...
'VariableTypes', mt_st_variable_names_types(:,2));
% Table with data to be merged
tb_data = [tb_data; {1, 'C001', 1, 2}; {2, 'C002', 2, 3}];
disp(tb_data);
year category numberWorkersData meanWageData
____ ________ _________________ ____________
1 "C001" 1 2
2 "C002" 2 3
Third merge the tables together with left-join, that will match by all variables with the same name.
% left-join tables together
tb_solu_joined_data = join(tb_solution, tb_data);
% Rescale a variable
tb_solu_joined_data{:, "numberWorkersData"} = tb_solu_joined_data{:, "numberWorkersData"}*10;
% Display
disp(tb_solu_joined_data);
year category rho numberWorkersSimu meanWageSimu numberWorkersData meanWageData
____ ________ ____ _________________ ____________ _________________ ____________
1 "C001" 0.5 5.5 6.6 10 2
2 "C002" 0.5 3.3 4.4 20 3
1 "C001" 0.25 2.5 3.6 10 2
2 "C002" 0.25 0.3 1.4 20 3