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.928558,1.01799]


Estimate standard deviation

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


Estimate variance

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


Estimate skewness

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


Estimate kurtosis

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