is an option to EstimatedDistribution and FindDistributionParameters that specifies what parameter estimator to use.
ParameterEstimator
is an option to EstimatedDistribution and FindDistributionParameters that specifies what parameter estimator to use.
Details
- The following basic settings can be used:
-
"MaximumLikelihood" maximize the log‐likelihood function "MethodOfMoments" match raw moments "MethodOfCentralMoments" match central moments "MethodOfCumulants" match cumulants "MethodOfFactorialMoments" match factorial moments - The maximum likelihood method will maximize the log-likelihood function
where
are the distribution parameters and
is the PDF of the distribution. - The method of moments solves
,
,
where
is the 
sample moment and
is the 
moment of the distribution with parameters
. - The different methods of moments include: "MethodOfMoments", "MethodOfCentralMoments", "MethodOfCumulants", or "MethodOfFactorialMoments".
- With ParameterEstimator->{mm, "MomentOrders"->list}, the moment orders specified by list are used for the method of moments estimator mm.
- For univariate distributions, the moment orders should be a list of positive integers.
- For
-dimensional distributions, the moment orders should be length
lists of non-negative integers with each list summing to a positive number. - ParameterEstimator->{"estimator",Method->"solver"} specifies what underlying equation or optimization solver to use.
- Possible solver settings for "MaximumLikelihood" include:
-
Automatic automatically chosen solver "FindMaximum" use FindMaximum to maximize log-likelihood "FindRoot" use FindRoot to solve likelihood equations "NMaximize" use NMaximize to maximize log-likelihood - Possible solver settings for "MethodOfMoments", "MethodOfCentralMoments", "MethodOfCumulants", and "MethodOfFactorialMoments" include:
-
Automatic automatically chosen solver "FindRoot" use FindRoot to solve moment equations "NSolve" use NSolve to solve moment equations "Solve" use Solve to solve moment equations - The Automatic setting uses a solver or combination of solvers based on the distribution and the parameters to be estimated.
- With the setting ParameterEstimator->{"estimator",Method->{"solver",opts}}, additional options can be given for the solver.
- Solver methods such as Solve, NSolve, and NMaximize that do not rely on starting values will not make use of starting values given to EstimatedDistribution or FindDistributionParameters.
Examples
open all close allBasic Examples (1)
Construct a distribution using maximum likelihood parameter estimates:
data = RandomVariate[GammaDistribution[5, 8], 1000];distml = EstimatedDistribution[data, GammaDistribution[α, β]]Use estimates based on method of moments:
distmm = EstimatedDistribution[data, GammaDistribution[α, β], ParameterEstimator -> "MethodOfMoments"]Plot the difference between densities for the two estimates:
Plot[PDF[distml, x] - PDF[distmm, x], {x, 0, Max[data]}]Scope (4)
Maximum Likelihood Estimator (2)
Obtain the maximum likelihood estimates using the default method:
data = RandomVariate[LogNormalDistribution[2, 3], 10000];FindDistributionParameters[data, LogNormalDistribution[μ, σ]]//TimingUse NMaximize to obtain the estimates:
FindDistributionParameters[data, LogNormalDistribution[μ, σ], ParameterEstimator -> {"MaximumLikelihood", Method -> "NMaximize"}]//TimingObtain the maximum likelihood estimates using the default method:
data = RandomVariate[BetaDistribution[5, 2], 1000];EstimatedDistribution[data, BetaDistribution[α, β]]Use FindMaximum with EvaluationMonitor to extract sampled points:
{params, {points}} = Reap[EstimatedDistribution[data, BetaDistribution[α, β], ParameterEstimator -> {"MaximumLikelihood", Method -> {"FindMaximum", EvaluationMonitor :> Sow[{α, β}]}}]];Visualize the sequences of sampled
and
values:
ListLogPlot[Transpose[points]]Moment‐Based Estimators (2)
Estimate parameters by matching raw moments:
data = RandomVariate[ParetoDistribution[2, 8, 5], 1000];EstimatedDistribution[data, ParetoDistribution[α, β, μ], ParameterEstimator -> "MethodOfMoments"]Other moment‐based methods typically give similar results:
EstimatedDistribution[data, ParetoDistribution[α, β, μ], ParameterEstimator -> "MethodOfCentralMoments"]EstimatedDistribution[data, ParetoDistribution[α, β, μ], ParameterEstimator -> "MethodOfFactorialMoments"]EstimatedDistribution[data, ParetoDistribution[α, β, μ], ParameterEstimator -> "MethodOfCumulants"]Estimate parameters using method of moments with default moments:
data = RandomVariate[NormalDistribution[2, 3], 1000];FindDistributionParameters[data, NormalDistribution[μ, σ], ParameterEstimator -> "MethodOfMoments"]Use the first and fourth moments:
FindDistributionParameters[data, NormalDistribution[μ, σ], ParameterEstimator -> {"MethodOfMoments", "MomentOrders" -> {1, 4}}]Use the second and third factorial moments:
FindDistributionParameters[data, NormalDistribution[μ, σ], ParameterEstimator -> {"MethodOfFactorialMoments", "MomentOrders" -> {2, 3}}]Properties & Relations (2)
Use FindDistributionParameters to get the maximum likelihood estimate:
data = RandomVariate[PoissonDistribution[5], 100];param = FindDistributionParameters[data, PoissonDistribution[μ]]Obtain the estimate by maximizing the log‐likelihood directly:
llfun[μ_] = LogLikelihood[PoissonDistribution[μ], data];FindMaximum[llfun[μ], μ]Compute the maximized value from the FindDistributionParameters estimate:
llfun[μ /. param]Obtain the method-of-moments estimate for data:
data = RandomVariate[GammaDistribution[5, 4], 100];FindDistributionParameters[data, GammaDistribution[α, β], ParameterEstimator -> "MethodOfMoments"]Solve for parameters by matching moments when a closed form exists:
moments = Table[Moment[GammaDistribution[α, β], k], {k, 2}]sol = Solve[Thread[Equal[moments, {Subscript[μ, 1], Subscript[μ, 2]}]], {α, β}]dataMoments = Table[Moment[data, k], {k, 2}]Substitute data moments to get the method-of-moments estimate:
sol /. {Subscript[μ, 1] -> dataMoments[[1]], Subscript[μ, 2] -> dataMoments[[2]]}Solve the moment equations numerically:
eqs = Thread[Equal[moments, dataMoments]]NSolve[eqs, {α, β}]Related Guides
History
Text
Wolfram Research (2010), ParameterEstimator, Wolfram Language function, https://reference.wolfram.com/language/ref/ParameterEstimator.html.
CMS
Wolfram Language. 2010. "ParameterEstimator." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/ParameterEstimator.html.
APA
Wolfram Language. (2010). ParameterEstimator. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ParameterEstimator.html
BibTeX
@misc{reference.wolfram_2026_parameterestimator, author="Wolfram Research", title="{ParameterEstimator}", year="2010", howpublished="\url{https://reference.wolfram.com/language/ref/ParameterEstimator.html}", note=[Accessed: 12-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_parameterestimator, organization={Wolfram Research}, title={ParameterEstimator}, year={2010}, url={https://reference.wolfram.com/language/ref/ParameterEstimator.html}, note=[Accessed: 12-June-2026]}