std function error "Subscript indices must either be real positive integers or logicals."

2 vues (au cours des 30 derniers jours)
Pardon my stupidity but I really dont understand why matlab refuses to compute the standard deviation.
I checked the data: 355 X 1 double (no NaN inside or whatever). I can compute the mean, sum, median, of this exact same data but I receive an error when I want to do the std ...
I tried the following: A=[1 2 3 1 2 3]';
B=std(A) New error: Index exceeds matrix dimensions.
But if I do it on a brand new script, it works !!
Can anyone tell my what the hell is happening there ?
Thank you so much in advance !

Réponses (1)

Chandani Madnani
Chandani Madnani le 26 Fév 2018
Modifié(e) : Chandani Madnani le 26 Fév 2018
I tried to reproduce the scenario by executing the below commands:
>> A=[1 2 3 1 2 3]';
>> B=std(A)
But I get a response:
B =
0.8944
Which version of MATLAB are you using and on which platform ? Is A initialized to something else in between the two commands ?
  1 commentaire
Pierre Lonfat
Pierre Lonfat le 27 Fév 2018
I actually found the answer and it is really stupid unfortunately. Never name a variable std (which is used to call the function for the standard deviation). Then everything is right again! Thank you for your answer !

Connectez-vous pour commenter.

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by