跪求解决方法
from numpy import *
from pylab import *
def pca(X):
num_data,dim=X.shape
mean_X=X.mean(axis=0)
X=X-mean_X
if dim>num_data:
M=dot(X,X.T)
e,EV=linalg.eight(M)
tmp=dot(X.T,EV).T
V=tmp[::-1]
S=sqrt(e)[::-1]
for i in range (V.shape[1]):
V[:,I]/=S
else:
U,S,V=linalg.svd(X)
V=V[:num_data]
return V,S,mean_X
照书上打的但是出现如下错误 name 'dim' is not defined,不知道怎么解决