X ve Y olayları için bir dizi sayı verildiğinde Pearson'un korelasyon katsayısını hesaplayın. Her olayın olasılığı eşittir, bu nedenle beklenen değerler her bir seriyi toplayarak ve deneme sayısına bölerek hesaplanabilir.
Giriş
1 6.86
2 5.92
3 6.08
4 8.34
5 8.7
6 8.16
7 8.22
8 7.68
9 12.04
10 8.6
11 10.96
Çıktı
0.769
En kısa kod kazanır. Giriş stdin veya arg tarafından yapılabilir. Çıktı stdout tarafından yapılacaktır.
Düzenleme: Çözümlerde daha fazla çeşitlilik sağlamak için yerleşik işlevlere izin verilmemelidir (yani hesaplanan beklenen değer, sapma, sapma, vb.). Bununla birlikte, builtins (sergi için) kullanarak görev için çok uygun bir dil göstermekten çekinmeyin.
David'in Mathematica için girdi fikrine dayanır (yerleşik ortalama kullanan 86 karakter)
m=Mean;x=d[[All,1]];y=d[[All,2]];(m@(x*y)-m@x*m@y)/Sqrt[(m@(x^2)-m@x^2)(m@(y^2)-m@y^2)]
m = Mean;
x = d[[All,1]];
y = d[[All,2]];
(m@(x*y) - m@x*m@y)/((m@(x^2) - m@x^2)(m@(y^2) - m@y^2))^.5
Kendi ortalamamızı kullanarak süpürgelik (101 karakter)
m=Total[#]/Length[#]&;x=d[[All,1]];y=d[[All,2]];(m@(x*y)-m@x*m@y)/((m@(x^2)-m@x^2)(m@(y^2)-m@y^2))^.5
m = Total[#]/Length[#]&;
x = d[[All,1]];
y = d[[All,2]];
(m@(x*y)-m@x*m@y)/((m@(x^2)-m@x^2)(m@(y^2)-m@y^2))^.5
m=Total@#/Length@#&