INNER CODE UNIT · Python
base
sdv-dev/Copulas · copulas/bivariate/__init__.py:42
base = np.linspace(EPSILON, 1.0 - EPSILON, COMPUTE_EMPIRICAL_STEPS)
# See https://github.com/sdv-dev/Copulas/issues/45
for k in range(COMPUTE_EMPIRICAL_STEPS):
left = sum(np.logical_and(U <= base[k], V <= base[k])) / N
right = sum(np.logical_and(U >= base[k], V >= base[k])) / N
if left > 0:
z_left.append(base[k])
L.append(left / base[k] ** 2)
if right > 0:
z_right.append(base[k])
R.append(right / (1 - z_right[k]) ** 2)
return z_left, L, z_right, R