早教吧 育儿知识 作业答案 考试题库 百科 知识分享

《《求相关系数的算法》》已知有两组数据,分别存放在数组A(100)和B(100)中,求计算两组数据的相关性和相关系数的算法,

题目详情
《《 求相关系数的算法 》》
已知有两组数据,分别存放在数组 A(100) 和 B(100)中,求计算两组数据的相关性和相关系数的算法,
▼优质解答
答案和解析
Private Sub Command1_Click()
Dim Aave As Single, Bave As Single, i As Integer, Sigma As Single, Sigma2 As Single, Rab As Single
Dim A() As String, B() As String, myStrA As String, myStrB As String
myStrA = "1,2,3,4,5,6,7,8" '把数组A的值赋给第一个字符串,数字间用英文逗号分开
myStrB = "8,7,6,5,4,3,2,1" '把数组B的值赋给第另一个字符串,数字间用英文逗号分开
A = Split(myStrA, ",")
B = Split(myStrB, ",")
For i = LBound(A) To UBound(A)
Aave = Aave + Val(A(i))
Bave = Bave + Val(B(i))
Next
Aave = Aave / (UBound(A) + 1)
Bave = Bave / (UBound(B) + 1)
For i = LBound(A) To UBound(A)
Sigma = Sigma + (A(i) - Aave) * (B(i) - Bave)
Sigma2 = Sigma2 + (A(i) - Aave) ^ 2 * (B(i) - Bave) ^ 2
Next
Rab = Sigma / Sqr(Sigma2)
MsgBox Rab
End Sub