MATLAB: Append rows to .mat file

file.mat

Hello, I have a folder for example file_1 . I want to create a data.mat with the files that I have in file_1. Each time I add data to file_1 I would like to update the .data.mat and add the data in the next row of data.mat. How can I do it?
dataNew = data;
save(fullfile(mat_path ,'data'),'data');

Best Answer

I understand that you want to add the files present in the folder ‘file_1’ into a single “. mat file. You may use the following functions to achieve the desired result.
  • save() - You may use the ‘-append’ attribute in save() to add the new data in the end of an existing .mat file. It may be better to ensure that the new variables do not have the same names as the existing variables. This may prevent overwriting the existing variables and subsequent loss of information.
  • matfile() - If there is constraint on the memory usage you may use this function instead. This function allows us to change the contents of .mat file without loading into memory. You may make use of the ‘Writable’ attribute to iswritable to enable write access. The new variables will be appended to the exisitng .mat file
You may go through the following documentation links if you need any clarification on the same.