Note
Go to the end to download the full example code.
Fit a non parametric copulaΒΆ
In this example we are going to estimate a Normal copula from a sample using non parametric representations.
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(30)
Estimate a Normal copula using BernsteinCopulaFactory
distribution = ot.BernsteinCopulaFactory().build(sample)
Draw fitted distribution
graph = distribution.drawPDF()
view = viewer.View(graph)
Estimate a Normal copula using KernelSmoothing
distribution = ot.KernelSmoothing().build(sample).getCopula()
graph = distribution.drawPDF()
view = viewer.View(graph)
plt.show()