Skip to content

Instantly share code, notes, and snippets.

@revaldianggara
Last active December 17, 2020 12:34
Show Gist options
  • Save revaldianggara/c14974ea61fca22643d790ab0c4d7a64 to your computer and use it in GitHub Desktop.
Save revaldianggara/c14974ea61fca22643d790ab0c4d7a64 to your computer and use it in GitHub Desktop.
JDS_Challanges
# Enter your code here. Read input from STDIN. Print output to STDOUT
'''
Implementasi rumus koefisien korelasi
r = (n*xy - x*y) / math.sqrt((n*xsq - x*x)*(n*ysq - y*y))
'''
import math as m
a = [15, 12, 8, 8, 7, 7, 7, 6, 5, 3] # Physics Scores
b = [10, 25, 17, 11, 13, 17, 20, 13, 9, 15] # History Scores
#Inisialisasi nilai awal variabel
n = 0
karl1 = 0
x = 0
y = 0
A = 0
B = 0
C = 0
D = 0
n = len(a) # Jumlah pengamatan
# Karl1 --> n*Σ(x*y)
for (x, y) in zip(a, b):
karl1 = x * y + karl1
karl1 = n * karl1
for i in range(len(a)):
A = a[i] + A # jumlah elemen a
C = a[i] * a[i] + C # Σ(x^2)
for i in range(len(b)):
B = b[i] + B # julmah elemen b
D = b[i] * b[i] + D # Σ(y^2)
# Karl2 --> Σ(x) * Σ(y)
karl2 = A * B
# Karl_num --> nΣ(xy) - Σ(x)Σ(y)
karl_num = karl1 - karl2
C = n * C # n*Σ(x)^2
D = n * D # n*Σ(y)^2
# Karl3 --> nΣ(x)^2 - (Σx)^2
karl3 = C - (A) ** 2
# Karl4 --> nΣ(y)^2 - (Σy)^2
karl4 = D - (B) ** 2
# Karl_den --> sqrt((nΣ(x)^2 - (Σx)^2) * (nΣ(y)^2 - (Σy)^2))
karl_den = m.sqrt(karl3 * karl4)
# Rumus final
KARL = karl_num / karl_den
#membulatkan 3 angka dibelakang koma
print(round(KARL, 3))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment