请问有人能够确认或纠正这个维基百科算法以计算第一个主成分吗?我想在D语言中实现一个简单的PCA,因为我不认为D语言有任何现有的PCA库。我尝试过实现这个算法,但似乎我的简单示例的结果与我从R或Octave得到的结果不匹配。我相当确定这不是实现错误,因为我已经多次检查过我的实现,甚至从头开始重写过它,而且这是一个非常简单的算法。
请问有人能够确认或纠正这个维基百科算法以计算第一个主成分吗?我想在D语言中实现一个简单的PCA,因为我不认为D语言有任何现有的PCA库。我尝试过实现这个算法,但似乎我的简单示例的结果与我从R或Octave得到的结果不匹配。我相当确定这不是实现错误,因为我已经多次检查过我的实现,甚至从头开始重写过它,而且这是一个非常简单的算法。
你的数据矩阵是否被零均值化,符合前提条件?
这段代码片段对此并不清楚,但根据数据矩阵最初的描述方式,我认为为了使幂法(power method)正常工作,列均值需要为零。