Hi guys,
I'm trying to workout a percentage for button errors using a loop. I have managed to do this but I can't figure out how to stop overwriting my previous loop. Its the last line i'm having trouble with and I'm not sure whether putting this into a matrix is the correct way of saving the percentage.
for i = 1:numel(fields);
for j = 1:numel(fieldsone);
count_rows = height (ButtonError.(fieldsone{j}));
rows = height (my_structure.(fields{i}));
percent = count_rows/rows*100;
percentageError {i}= [percent];
end
end
TIA

 採用された回答

Cris LaPierre
Cris LaPierre 2020 年 12 月 1 日
編集済み: Cris LaPierre 2020 年 12 月 1 日

0 投票

You have two for loops with loop counters i and j. You last line is using the outer counter, i. If you want to keep every value, you will need to use both indices. Try something like this
percentageError(i,j)= [percent];

2 件のコメント

Sophia Vaccarella
Sophia Vaccarella 2020 年 12 月 1 日
Thank you! This works although I now have a matrix in which each row/column is repeated 8 times, I'm not sure if there is another way to avoid this but I think i'll just get rid of this after :)
Cris LaPierre
Cris LaPierre 2020 年 12 月 1 日
If you are getting repeated values, that tells me you can probably get rid of one of your loops.

サインインしてコメントする。

その他の回答 (1 件)

Image Analyst
Image Analyst 2020 年 12 月 1 日

0 投票

Why not do
percentageError(i, j) = percent;

1 件のコメント

Sophia Vaccarella
Sophia Vaccarella 2020 年 12 月 1 日
This worked the same as the above answer, thank you!

サインインしてコメントする。

カテゴリ

ヘルプ センター および File ExchangeLoops and Conditional Statements についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by