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

1 次查看(过去 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