我正在使用 Python (v2.7.10) NumPy 对数据集进行 PCA 分析。我通过在较小的数据集上运行 PCA 分析,然后确认我使用sklearn.decomposition.
当我运行完整的数据集(包含 60000 个变量和 93 个样本)时,我感到有些奇怪。在构建协方差矩阵(即 60000 x 60000)后,我使用numpy.linalg.eig(). 当我检查特征值和特征向量时,所有条目都恰好为 0。
这让我相信,numpy.linalg.eig()由于矩阵尺寸大, 的行为有些奇怪。
问题:发生了什么事?哪些假设正在崩溃?我如何解决它?