相关系数r的计算公式如下所示
(1-1)
其中x={x1,x2,x3...,xn},y={y1,y2,y3...yn}
#include "math.h" #include "stdio.h" //相关系数函数 double aaa(int a[],int b[],int n){ int k = 0; int temp1s=0; int temp2s=0; double x1=0,y1=0,x2=0,y2=0,t1=0; for (int i = 0; i <n; i++) { int temp1 =a[i]; int temp2 =b[i]; temp1s+=temp1; temp2s+=temp2; } //求均值 double ave_temp1=double(temp1s)/n; double ave_temp2=double(temp2s)/n; for (int j = 0; j < n; j++) { x1=(a[j]-ave_temp1); y1=(b[j]-ave_temp2); t1+=x1*y1; double p2=pow(x1,2); x2+=p2; double q2=pow(y1,2); y2+=q2; } double c=sqrt(x2*y2); double r=t1/c; return r; } int main(){ int a[]={1,2,3,4,5,6,7,8,9,0}; int b[]={1,2,3,4,5,6,7,8,9,0}; double r=aaa(a,b,10); printf("%lf\n",r); }