How to delete an element from a Simulink.S​imulationD​ata.Datase​t

6 次查看(过去 30 天)
Hello,
I am using Simulink.SimulationData.Dataset to feed a signal builder. I have a script that analyse differerences between inputs of my model and datasets stored in .mat in order to have the same amount and same names between model and scenarios defined in thoses .mat.
If I add a new input in my model, it is easy to add an element in my dataset
diff = setdiff(modelInputNames,inputNames); % modelInputNames is the input list in model, inputNames is the input list in .mat
if ~isempty(diff)
for j = 1 : length (diff)
zeroInput = timeseries(0,ds{1}.Time); %Creating an Input with zeros, to be modified with signal builder UI
ds = ds.addElement(zeroInput,char(diff(j)));
end
end
But if I supress an input in the model, I can't find a way to delete an Element in 'ds'.
diff = setdiff(inputNames,modelInputNames); % modelInputNames is the input list in model, inputNames is the input list in .mat
if ~isempty(diff)
for j = 1 : length (diff)
%Something to delete the element diff(j) in ds
end
end
Sorry if the question is trivial, but I just can't find the right way !
Thank you

采纳的回答

Salman Ahmed
Salman Ahmed 2021-11-19
Hi Camille,
You could use removeElement to delete an element. To remove the jth element from your Simulink.SimulationData.Dataset, use the command below :
ds = ds.removeElement(j);

更多回答(0 个)

产品


版本

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by