Effacer les filtres
Effacer les filtres

Getting an unknown error on calculating Standard Deviation.

21 vues (au cours des 30 derniers jours)
Amit Priyankar
Amit Priyankar le 19 Juin 2020
Commenté : Hassan Eissa le 8 Sep 2023
I was trying to calculation using inbuilt Standard Deviation function but getting an error.
I ran the following code
load myfile.mat
std(v)
Error:
Error using var (line 74)
Invalid data type. First input argument must be single or double.
Error in std (line 59)
y = sqrt(var(varargin{:}));
  1 commentaire
Atul Upadhyay
Atul Upadhyay le 19 Juin 2020
I can see that the vector you are using has the int8 datatype in it and it contains values from 0 to 100. So, while calculating standard deviation there are chances of overflow.
Typecast the vector v to ‘double’ to get the desired output.
load myfile.mat;
v=double(v);
sd=std(v);
Refer to the following documentation to know more about datatypes in MATLAB.
https://in.mathworks.com/help/matlab/matlab_prog/integers.html

Connectez-vous pour commenter.

Réponse acceptée

Atul Upadhyay
Atul Upadhyay le 19 Juin 2020
I can see that the vector you are using has the int8 datatype in it and it contains values from 0 to 100. So, while calculating standard deviation there are chances of overflow.
Typecast the vector v to ‘double’ to get the desired output.
load myfile.mat;
v=double(v);
sd=std(v);
Refer to the following documentation to know more about datatypes in MATLAB.
https://in.mathworks.com/help/matlab/matlab_prog/integers.html

Plus de réponses (2)

Bjorn Gustavsson
Bjorn Gustavsson le 19 Juin 2020
Your variable v is a uint8. Try:
std(double(v))
HTH

Hassan Eissa
Hassan Eissa le 8 Sep 2023
Compute the maximum value (max), minimum value (min), average value (mean), standard deviation (std) and the variance ( square of the standard deviation) of the variable 'signal
  1 commentaire
Hassan Eissa
Hassan Eissa le 8 Sep 2023
[sample, signal]
Step 1 Compute the Statistics
This file contains a variable called signal that has 730 samples. Compute the maximum value (max), minimum value (min), average value (mean), standard deviation (std) and the variance ( square of the standard deviation) of the variable 'signal'.
% Create the variables below that represent the statistics of the variable signal
%
maxSignal =
minSignal =
avgSignal =
stdSignal =
varSignal =

Connectez-vous pour commenter.

Tags

Produits


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by