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

조회 수: 2(최근 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);
  댓글 수: 1
Camille Yver
Camille Yver 2021년 11월 19일
Thank you ! I must have missed this in the documentation.

댓글을 달려면 로그인하십시오.

추가 답변(0개)

범주

Find more on Get Started with MATLAB in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by