【问题标题】:Using built-in function(PCA) in pyscripter在 pyscripter 中使用内置函数(PCA)
【发布时间】:2023-03-11 23:52:02
【问题描述】:

谁能建议如何在 pyscripter 中使用 PCA 内置函数。作为开始,我导入了 pca

from matplotlib.mlab import PCA

然后是代码区,

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

其中 arr1 是从文件中读取的数据集(数字)。但我收到 Attrubute 错误:

 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'

请帮忙..

【问题讨论】:

    标签: python pca pyscripter


    【解决方案1】:

    在 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
    

    希望对您有所帮助。 :)

    【讨论】:

    • 谢谢..我已修改但现在错误是:回溯(最近一次调用最后一次):文件“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 内置函数是否也能完成所有这些均值、协方差等计算
    • @Devi 好像没有。你必须先让 para 正确通过。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多