Performance Issue detected in Table vs Struct Data
9 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Tobias Poniatowski
il 28 Feb 2019
Commentato: Peter Perkins
il 11 Mar 2019
% Hello Mathworks Team,
% our development Team found an issue when writing data into specific positions of a data column of a table.
% Comparing the performance with writing into an array of a struct we was wondering if this is intended or if it could be an issue in the software?
% Could you give us an answer if we should address the data of a table differently?
% Thanks in advance and best Regards.
% Tobias Poniatowski
testData = zeros(100000,1);
testValueToWrite = 4711;
testStruct.data = testData;
testTable = table(testData, 'VariableNames', {'data'});
ticStruct = tic;
for i=1:size(testStruct.data,1)
testStruct.data(i) = testValueToWrite;
end
toc(ticStruct)
ticTable = tic;
for i=1:size(testTable.data,1)
testTable.data(i) = testValueToWrite;
end
toc(ticTable)
% result:
% Elapsed time is 0.025719 seconds.
% Elapsed time is 13.884480 seconds.
1 Commento
Peter Perkins
il 11 Mar 2019
Tobias, as comments in the links that Harshita cites suggest, using vectorized operations is a better strategy. Your code example is so stripped down that it's impossible to give you any real advice, but I imagine that you could contact MathWorks support for help.
Risposta accettata
Harshita Gupta
il 4 Mar 2019
Table do have known performance issues but you can refer to following links to improve your code:
0 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Tables in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!