步骤:
1、获取样本集矩阵(本文中行表示样本,列表示维度)
void PCA::orMatrix(int _sapNum, int _dimt) { //初始样本集矩阵
sapNum_ = _sapNum; dimt_ = _dimt;
std::cout << "维数为: " << dimt_ << "样本个数为: " << sapNum_ << '\n';
orAry = (double **)malloc(sapNum_*sizeof(double));
for(int i=1; i<=sapNum_; i++)
*(orAry+i) = (double *)malloc(dimt_*sizeof(double));
std::cout << "input the original vectors" << '\n';
for(i=1; i<=sapNum_; i++)
for(int j=1; j<=dimt_; j++)
std::cin >> *(*(orAry+i)+j);
}
输入数据如下
即为 10*3 阶矩阵,其中维数为3(即3个变量),索取样本数为10(即10个样本向量)
2、计算每一维的均值(即每一列的均值)