Getting NaN for the mean of a vector, is this normal?
조회 수: 1 (최근 30일)
이전 댓글 표시
Hi there,
So I wrote a code here an when I try to calc the mean I get a NaN result for the final mean. This is due inaround 5 hours and I have no idea what to do. Any ideas?
%% Get user input
Prototype_id = input('Please Enter the prototype ids in vector form: ');
Time_intial = input('Please input the activation times in vector form: ');
Time_Final = input('Please inputthe time of decay in vector form: ');
% Calculate the mean time for activation
Mean = mean(Time_intial);
% Calculate the mean time for decay
Mean_f = mean(Time_Final);
%% Display the result
disp(['The number of prototypes is: ', num2str(Prototype_id)]);
disp(['The average amount of time for activation is: ', num2str(Mean)]);
disp(['The average amount of time for decay is: ', num2str(Mean_f)]);
댓글 수: 3
답변 (2개)
Ameer Hamza
2020년 10월 9일
편집: Ameer Hamza
2020년 10월 9일
I think you misunderstand the colon operator. Read about it here: https://www.mathworks.com/help/matlab/ref/colon.html. You should input these values like this
prototype ids
[3, 8, 14, 17, 21, 22, 25, 32, 34, 40, 46, 43, 48, 49]
activation times
[0, 12, 6, 17, 32, 14, 35, 22, 10, 18, 29, 23, 4, 15]
time of decay
[130, 115, 158, 180, 250, 292, 117, 217, 231, 172, 123, 182, 218, 200]
댓글 수: 2
Ameer Hamza
2020년 10월 9일
Yes, it might cause confusion and bug in some cases. I have updated the answer to use commas as the separator.
Sudhakar Shinde
2020년 10월 9일
NaN returns the scalar representation of "not a number". Operations return NaN when they have undefined numeric results, such as 0/0 or 0*Inf.
댓글 수: 2
Sudhakar Shinde
2020년 10월 9일
편집: Sudhakar Shinde
2020년 10월 9일
time of decay in vector form gives an empty vector and hence mean is NaN.
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!