Fit a parametric copulaΒΆ

In this example we are going to estimate the parameters of a Gaussian copula from a sample.

import openturns as ot
import openturns.viewer as viewer
from matplotlib import pylab as plt

ot.Log.Show(ot.Log.NONE)

Create data

R = ot.CorrelationMatrix(2)
R[1, 0] = 0.4
copula = ot.NormalCopula(R)
sample = copula.getSample(500)

Estimate a Normal copula

distribution = ot.NormalCopulaFactory().build(sample)
print(distribution)
NormalCopula(R = [[ 1        0.433738 ]
 [ 0.433738 1        ]])

The estimated parameters

distribution.getParameter()
class=Point name=Unnamed dimension=1 values=[0.433738]


Draw fitted distribution

graph = distribution.drawPDF()
view = viewer.View(graph)
plt.show()
X0 iso-PDF