Estimate moments from sampleΒΆ

In this example we are going to estimate statistical moments from a sample, eventually from an output variable of interest.

import openturns as ot

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

Create a sample

# model f
model = ot.SymbolicFunction(["x1", "x2"], ["x1^2+x2", "x2^2+x1"])

# input vector X
inputDist = ot.JointDistribution([ot.Normal()] * 2, ot.IndependentCopula(2))
inputDist.setDescription(["X1", "X2"])
inputVector = ot.RandomVector(inputDist)

# output vector Y=f(X)
output = ot.CompositeRandomVector(model, inputVector)

# sample Y
size = 1000
sample = output.getSample(size)

Estimate mean

sample.computeMean()
class=Point name=Unnamed dimension=2 values=[0.922665,1.02048]


Estimate standard deviation

sample.computeStandardDeviation()
class=Point name=Unnamed dimension=2 values=[1.65284,1.81903]


Estimate variance

sample.computeVariance()
class=Point name=Unnamed dimension=2 values=[2.73188,3.30888]


Estimate skewness

sample.computeSkewness()
class=Point name=Unnamed dimension=2 values=[1.45099,1.73197]


Estimate kurtosis

sample.computeKurtosis()
class=Point name=Unnamed dimension=2 values=[7.06969,7.94102]