2015-01-13 3 views
0

누구나 pyscripter에서 PCA 내장 함수를 사용하는 방법을 제안 할 수 있습니까?pyscripter에서 내장 함수 (PCA) 사용

Traceback (most recent call last): 
File "C:\Users\pooja\Documents\project\traingsom.py", line 282, in <module> 
results = PCA(arr1) 
File "C:\Python27\lib\site-packages\matplotlib\mlab.py", line 845, in __init__ 
n, m = a.shape 
AttributeError: 'list' object has no attribute 'shape' 
: 시작으로 전 arr1 내가 같이 Attrubute 오류가 점점 오전 file.But에서 읽은 데이터 세트 (숫자) 인 PCA

from matplotlib.mlab import PCA 

다음 코드 영역,

results = PCA(arr1) 
print("-----------------------PCA-----------------------") 
print(results) 

수입

도와주세요 ..

답변

0

mlab의 소스 코드에서 '*a*: a numobservations x numdims array'이라고 표시됩니다. 당신은 다음과 같이 사용한다 :

import numpy as np 
from matplotlib.mlab import PCA 

dataMatrix = np.array(aListOfLists) # Convert a list-of-lists into a numpy array. aListOfLists is the data points in a regular list-of-lists type matrix. 
myPCA = PCA(dataMatrix) # make a new PCA object from a numpy array object 

는 도움이되기를 바랍니다. :)

+0

감사합니다. 수정되었지만 오류가 있습니다. 추적 (최근 호출 마지막) : 파일 "C : \ Users \ pooja \ Documents \ project \ pca.py", 줄 37, myPCA = PCA (dataMatrix) File "C : \ Python27 \ lib \ site-packages \ matplotlib \ mlab.py", 줄 845, __init__에서 n, m = a.shape ValueError : 압축을 풀려면 1 개 이상의 값이 필요합니다. ........... 그리고이 PCA inbuilt 함수가 모든 평균, 공분산 계산을하는지 여부를 알고 싶습니다. – Devi

+0

@Devi 그렇지 않습니다. 파라를 먼저 통과시켜야합니다. –