Saving a variable in a .mat file

Hello everyone,
I have a .m file where a function runs and outputs a series of variables. Right now, I am saving one values out of the if loop in the said function as such:
function [par, ta, xa] = swingup(par)
if strcmp(par.run_type, 'learn')
...
ra = zeros(par.trials, 1);
...
for ii = 1:par.trials
x = swingup_initial_state();
for tt = 1:ceil(par.simtime/par.simstep)
...
r = observe_reward(a, sP, par);
...
% Keep track of cumulative reward
reward = r;
ra(ii) = ra(ii)+reward;
% TODO: check termination condition
if is_terminal(s,par) == 1
break;
end
end
end
save('swingup', 'ra');
In the end, I am interested in saving 'ra' while changing some of the values which 'ra' depends on. So for example changing some values in 'par'. So what I want to achieve is:
  1. Run the code
  2. Save 'ra' as a .m file
  3. Change a variable
  4. Run the code again
  5. Save the new value of 'ra' in a column next to the already existing one
The goal is to have a .mat file with each column the results of ra for different values so that I can plot them. How exactly can I achieve this?

2 个评论

What I don't understand is how to prevent the new values overwrite the old one when running the same script.

请先登录,再进行评论。

回答(1 个)

Dinesh Yadav
Dinesh Yadav 2020-8-25

0 个投票

Hi,
Have a look at this existing answer for the same question(link). It will resolve your issue.

类别

帮助中心File Exchange 中查找有关 Loops and Conditional Statements 的更多信息

提问:

2020-8-23

Community Treasure Hunt

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

Start Hunting!

Translated by