Index exceeds matrix dimensions. -error

I am keep getting this error
??? Index exceeds matrix dimensions.
Error in ==> gaussmix at 130 m=xs(mod((1:k)-1,n)+1,:); % just include all points several times
Error in ==> matlab at 160 [smiech_means,smiech_variances,smiech_weights] = gaussmix(mfcc_smiech,[],[],8,'hf');

 Réponse acceptée

Matt J
Matt J le 21 Jan 2014
Modifié(e) : Matt J le 21 Jan 2014

0 votes

Use DBSTOP to examine 'k' vs. length(xs) inside gaussmix.
It might also be advisable not to name your main function 'matlab'.

6 commentaires

Matt J
Matt J le 21 Jan 2014
Monica commented:
How can I use DBSTOP to examine 'k' vs. length(xs) inside gaussmix?
I changed name my function and all time is the same error
Matt J
Matt J le 21 Jan 2014
Modifié(e) : Matt J le 21 Jan 2014
If you execute at the command line
>> dbstop if error
and then re-run, the code execution will pause at the line giving the error
m=xs(mod((1:k)-1,n)+1,:);
You can then examine whether mod((1:k)-1,n)+1 produces a value that is greater than the number of rows in xs. I assume you wrote this code and have reason to think it should not do this.
Monika
Monika le 21 Jan 2014
I didn't write code gaussmix. This code is ready in matlab (it is from toolbox)
Matt J
Matt J le 21 Jan 2014
Modifié(e) : Matt J le 21 Jan 2014
It doesn't appear to be a toolbox command for direct use by users. I can't find it anywhere in the online documentation.
Matt J
Matt J le 21 Jan 2014
Modifié(e) : Matt J le 21 Jan 2014
Well, if you understand what the code is doing (or even if you don't), DBSTOP will help you understand where it's gone wrong, or what bad input you might have given it. Otherwise, you may have to go to the authors of that toolbox for help.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by