when i am saving workspce of function , it's not containing all variables.

2 次查看(过去 30 天)
when i am saving workspce of function , it's not containing all variables. and when i run through command window it showing all data for the same data.
why it's showing the difference between workspace?
  3 个评论
Sonali Patil
Sonali Patil 2020-11-13
Thanks for the reply.but i am using some variables in function and exporting workspace to .m file and other side using same execution through command window and exporting into another .m file . when i am comparing both the files , some data missing in .m file exported from function.
is any command available to merge the base and function workspace?
Rik
Rik 2020-11-13
Your comment is very confusing. Data is not saved in an m file, but in a mat file.
Why would you want to merge the base and function workspace? If you want them to be the same you can use a script. The whole point of functions is to hide the internals from the caller. What do you want to achieve?

请先登录,再进行评论。

采纳的回答

Sudhakar Shinde
Sudhakar Shinde 2020-11-13
There may not be direct function available to merge two workspace data directly. If you would like to save base workspace and function workspace variables to '.m' files. I feel below can be a workaround to do it.
  1. Save base workspace to File1.m file
  2. Save function workspace to File2.m file
Then use function to merge two .m files:
function Merge2Mfiles(file1,file2)
run(file1);
run(file2);
Data = whos;
Data = Data(~contains({Data.name},{'file2','file1'}));
matlab.io.saveVariablesToScript('Out.m', {Data.name});
end

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Workspace Variables and MAT Files 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by