numbers_to_extract_normal=[278,199,241,235,35,77,82,164,239,170];
numbers_to_extract_diagnosed = [139,137,136,135,133,140,141,116,157,188];
normal = 0;
diagnosed =0 ;
digits_normal = numel(num2str(numbers_to_extract_normal(i)));
Error: Array indices must be positive integers or logical values.
please help me

Antworten (2)

Jan
Jan am 29 Jun. 2021

1 Stimme

The variable i is not defined. If you omit it, num2str() replies a cell array and numel does not work directly. With cellfun():
digits_normal = cellfun('length', num2str(numbers_to_extract_normal));
Converting the numbers to char vectors only to count the number of digits is not efficient. Smarter:
digits_normal = floor(log10(numbers_to_extract_normal)) + 1;
DGM
DGM am 29 Jun. 2021
Bearbeitet: DGM am 29 Jun. 2021

0 Stimmen

Your index i isn't valid because it's a complex number.
i = sqrt(-1);
This is a good example of why you shouldn't be using i or j as iterators or indices.
This should also be a lesson in actually defining your variables before you use them.

Kategorien

Mehr zu Data Types finden Sie in Hilfe-Center und File Exchange

Tags

Gefragt:

am 29 Jun. 2021

Kommentiert:

am 29 Jun. 2021

Community Treasure Hunt

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

Start Hunting!

Translated by