C++ 矩阵的相关系数
有人能帮我吗,因为我在这个代码上有错误,我不知道哪里出了问题。我得到以下信息: 错误C2059:语法错误:“return”, 错误C2334:在“{”之前出现意外标记;跳过明显的函数体, 错误C2039:“rtn”:不是“corr_系数”的成员 参见“修正系数”的声明 多谢各位C++ 矩阵的相关系数,c++,visual-c++,C++,Visual C++,有人能帮我吗,因为我在这个代码上有错误,我不知道哪里出了问题。我得到以下信息: 错误C2059:语法错误:“return”, 错误C2334:在“{”之前出现意外标记;跳过明显的函数体, 错误C2039:“rtn”:不是“corr_系数”的成员 参见“修正系数”的声明 多谢各位 using namespace std; class corr_coefficient { matrix x, y; double sum, C, corr[5]; int j; publi
using namespace std;
class corr_coefficient
{
matrix x, y;
double sum, C, corr[5];
int j;
public:
double calc_mu(matrix x, int j=0);
double calc_covariance(matrix x, matrix y, int j);
double calc_correlation();
double StandardDeviation(matrix a, int j=0);
double return(int i){return corr[i];
};
corr_coefficient(matrix x, matrix y);
};
double corr_coefficient::calc_mu(matrix x, int j)
{
sum=0;
for(int i=0; i<C; i++)
{
sum = sum+x(i,j);
}
return sum/C;
}
double corr_coefficient::calc_covariance(matrix x, matrix y, int j)
{
double mux=calc_mu(x,0);
double muy=calc_mu(y,j);
sum=0;
for (int i=0; i<C; i++)
{
sum=sum+(x(i,0)-mux)*(y(i,j)-muy);
}
return sum/(C-1);
}
double corr_coefficient::StandardDeviation(matrix a, int j)
{
double mua=calc_mu(a,j);
sum=0;
for (int i=0; i<C; i++)
{
sum=sum+((a(i,j))-mua)*((a(i,j))-mua);
}
return sqrt(sum/(C-1));
}
corr_coefficient::corr_coefficient(matrix x, matrix y)
{
C=35;
for (int j=0; j<5; j++)
{
corr[j]=calc_covariance(x, y, j)/(StandardDeviation(x, 0)*StandardDeviation(y, j));
}
}
使用名称空间std;
类修正系数
{
矩阵x,y;
双和,C,corr[5];
int j;
公众:
双计算单位(矩阵x,int j=0);
双计算协方差(矩阵x,矩阵y,int j);
双重计算关联();
双标准偏差(矩阵a,int j=0);
双返回(int i){return corr[i];
};
corr_系数(矩阵x,矩阵y);
};
双修正系数:计算单位(矩阵x,int j)
{
总和=0;
对于(int i=0;i
return
是一个关键字。您不能有一个名为return
的函数。只需将其称为不同的函数即可。也许operator[]
是在此处重载的合适操作符
double operator[](int i){ return corr[i]; }
return
是一个关键字。您不能有一个名为return
的函数。只需将其称为不同的函数即可。也许operator[]
是在此处重载的合适操作符
double operator[](int i){ return corr[i]; }