Issue
I am using numpy and want to compute the covariance matrix for an ndarray. I am trying to use numpy.cov() but am not getting the correct results. More details below.
My ndarray is 768x8 for where 8 is the numbers features in my data set.
When I use MATLAB to compute the covariance matrix, I get a 8x8 (which is what I require), but when I use np.cov(), I get a 768x768 which is incorrect. I tried changing the rowvar argument to true and this does not work.
What would be the correct call to numpy.cov()? In other words, how would I reproduce the cov() results from MATLAB using numpy.
Solution
Amazingly, the documentation might tell you. You should pass rowvar=False
to indicate that columns represent variables.
>>> data.shape
(768, 8)
>>> numpy.cov(data, rowvar=False).shape
(8, 8)
Answered By - donkopotamus
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.