Question

MATLAB inbuilt function Cov(M) always returns a singular matrix. It is happening irrespective of M(3x3) I choose. Please help me out.

Était-ce utile?

La solution

That may be true, it is always hard to find any relationship for short sequences as 3x3. You most likely need more samples. Think that you would have 3 sequences with N samples each. Then you need to find a relation between the sequences. If N = 3 you could quite easily guess that you are a bit short of data to confirm anything statistically. However I can assure you that the function works fine. Just try

M = randn(1000,3);
c = cov(M)
invc = inv(c)
detc = det(c)

which gives the wanted result.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top