EstimatedProcess[data,proc]
estimates the parametric process proc from data.
EstimatedProcess[data,proc,{{p,p0},{q,q0},…}]
estimates the parameters p, q, … with starting values p0, q0, ….
EstimatedProcess[data,proc,iproc]
estimates process proc with starting values taken from the instantiated process iproc.
EstimatedProcess
EstimatedProcess[data,proc]
estimates the parametric process proc from data.
EstimatedProcess[data,proc,{{p,p0},{q,q0},…}]
estimates the parameters p, q, … with starting values p0, q0, ….
EstimatedProcess[data,proc,iproc]
estimates process proc with starting values taken from the instantiated process iproc.
Details and Options
- EstimatedProcess returns the symbolic process proc with parameter estimates inserted for any non-numeric values.
- The data can be given in the following forms:
-
{s0,…} a path with state si at time i {{t0,s0},…} a path with state si at time ti TemporalData[…] one or several paths - The times ti and states si must belong to the time and state domain of the process proc.
- The process proc can be any parametric scalar- or vector-valued process.
- The following options can be given:
-
AccuracyGoal Automatic the accuracy sought ProcessEstimator Automatic what process parameter estimator to use PrecisionGoal Automatic the precision sought WorkingPrecision Automatic the precision used in internal computations - The following basic settings can be used for ProcessEstimator:
-
Automatic automatically choose the parameter estimator "MaximumLikelihood" maximize the log likelihood directly "MethodOfMoments" match covariance - Special settings for ProcessEstimator are documented under the individual random process reference pages.
- Additional settings for time series processes include "MaximumConditionalLikelihood" and "SpectralEstimator".
- Additional settings for HiddenMarkovProcess include "BaumWelch" and "ViterbiTraining".
Examples
open all close allBasic Examples (2)
Estimate the parameter of a PoissonProcess:
data = RandomFunction[PoissonProcess[.4], {0, 10 ^ 2}];eproc = EstimatedProcess[data, PoissonProcess[λ]]Compare simulations of the estimated process to the original data:
sims = RandomFunction[eproc, {0, 10 ^ 2}, 3];ListLinePlot[Join[data["Paths"], sims["Paths"]], PlotStyle -> {Thick, Dashed, Dashed, Dashed}, PlotLegends -> {"data", "simulations"}]Find parameters for an ARProcess:
data = RandomFunction[ARProcess[{.2, .1, -.3}, .1], {1, 100}];eproc = EstimatedProcess[data, ARProcess[{a, b, c}, v]]Compare correlation functions for data and the estimated process:
ρdata = CorrelationFunction[data, {25}];ρproc = CorrelationFunction[eproc, {25}];ListLinePlot[{ρdata, ρproc}, DataRange -> {0, 25}, PlotLegends -> {"data", "process"}]Scope (9)
Parametric Processes (3)
Estimate the parameters for a RandomWalkProcess:
SeedRandom[1234];data = RandomFunction[RandomWalkProcess[0.3], {0, 400}];ListLinePlot[data]EstimatedProcess[data, RandomWalkProcess[p]]Use starting value for the parameter:
EstimatedProcess[data, RandomWalkProcess[p], {{p, .5}}]Estimate the parameters for a RenewalProcess:
data = RandomFunction[RenewalProcess[GammaDistribution[2, 1]], {0, 10 ^ 3}];ListLinePlot[data]EstimatedProcess[data, RenewalProcess[GammaDistribution[a, b]]]Estimate the parameters for a Wiener process:
data = RandomFunction[WienerProcess[.4, .7], {0, 100, 0.01}];ListLinePlot[data]EstimatedProcess[data, WienerProcess[μ, σ]]Time Series Processes (3)
Estimate the parameters for an ARProcess:
proc = ARProcess[{-.2, .3, -.3}, .1];data = RandomFunction[proc, {0, 10 ^ 3}];eproc = EstimatedProcess[data, ARProcess[3]]DiscretePlot[Evaluate@(CovarianceFunction[#, h]& /@ {proc, eproc}), {h, 0, 10}, ExtentSize -> 1 / 2]Estimate an ARMAProcess:
proc = ARMAProcess[{.2, .3}, {0.26}, .1];data = RandomFunction[proc, {0, 1000}];eproc = EstimatedProcess[data, ARMAProcess[2, 1]]Compare correlation functions:
DiscretePlot[Evaluate@(CorrelationFunction[#, h]& /@ {proc, eproc}), {h, 0, 4}, ExtentSize -> 1 / 2]Provide initial values for the estimation of an ARProcess:
proc = ARProcess[{-.2, .3, -.3}, .1];
data = RandomFunction[proc, {0, 10 ^ 3}];EstimatedProcess[data, ARProcess[{a, b, c}, v], {{a, -.2}, {b, .3}, {c, -.3}, {v, .1}}]The initial values can also be given as a corresponding model with numeric parameters:
EstimatedProcess[data, ARProcess[{a, b, c}, v], proc]Solve for repeated parameters:
data = RandomFunction[ARProcess[{-.2, .3, -.3}, .1], {0, 10 ^ 3}];EstimatedProcess[data, ARProcess[{a, b, a}, v]]Queueing Processes (1)
Parameter estimation for an M/M/1 queue:
𝒬 = QueueingProcess[5., 13];data = RandomFunction[𝒬, {0, 200}];ListLinePlot[data]𝒬1 = EstimatedProcess[data, QueueingProcess[λ, μ]]Use the corresponding random path for the data:
𝒬2 = EstimatedProcess[data["Path"], QueueingProcess[λ, μ]]Compare system sizes for the original and estimated processes:
{QueueProperties[𝒬, "MeanSystemSize"], QueueProperties[𝒬2, "MeanSystemSize"]}Finite Markov Processes (2)
Estimate a four-state discrete Markov process:
𝒫 = DiscreteMarkovProcess[3, {{1 / 2, 1 / 2, 0, 0}, {1 / 2, 1 / 2, 0, 0}, {1 / 4, 1 / 4, 1 / 4, 1 / 4}, {0, 0, 0, 1}}];data = RandomFunction[𝒫, {0, 10 ^ 4}, 10];Map[MatrixForm, estproc = EstimatedProcess[data, DiscreteMarkovProcess[4], WorkingPrecision -> MachinePrecision]]Estimate a four-state continuous Markov process:
𝒫 = ContinuousMarkovProcess[{1, 0, 0, 0}, (| | | | |
| -- | -- | -- | - |
| -3 | 1 | 2 | 0 |
| 3 | -6 | 2 | 1 |
| 4 | 2 | -9 | 3 |
| 0 | 0 | 0 | 0 |)];data = RandomFunction[𝒫, {0, 10 ^ 2}, 10 ^ 3];Map[MatrixForm, estproc = EstimatedProcess[data, ContinuousMarkovProcess[4], WorkingPrecision -> MachinePrecision]]Options (5)
ProcessEstimator (4)
Maximum likelihood for a parametric process:
data = RandomFunction[WienerProcess[0, 1], {0, 100, .1}];EstimatedProcess[data, WienerProcess[a, b], ProcessEstimator -> "MaximumLikelihood"]data = RandomFunction[ARProcess[{.3, .2}, 1], {10 ^ 3}];EstimatedProcess[data, ARProcess[2], ProcessEstimator -> "MaximumLikelihood"]Method of moments for a parametric process:
data = RandomFunction[PoissonProcess[3], {0, 10 ^ 4}];EstimatedProcess[data, PoissonProcess[m], {{m, 3}}, ProcessEstimator -> "MethodOfMoments"]data = RandomFunction[ARMAProcess[{.3, .2}, {.5}, 1], {10 ^ 4}];EstimatedProcess[data, ARMAProcess[2, 1], ProcessEstimator -> "MethodOfMoments"]Maximize conditional likelihood for a time series process:
data = RandomFunction[ARMAProcess[{.3, .2}, {.5}, 1], {10 ^ 4}];EstimatedProcess[data, ARMAProcess[2, 1], ProcessEstimator -> "MaximumConditionalLikelihood"]Spectral estimator for a time series process:
data = RandomFunction[ARProcess[{.3, .2}, 1], {10 ^ 3}];EstimatedProcess[data, ARProcess[2], ProcessEstimator -> "SpectralEstimator"]WorkingPrecision (1)
Estimate a process using default machine precision:
data = RandomFunction[QueueingProcess[5, 11], {0, 150}];EstimatedProcess[data, QueueingProcess[λ, μ]]data = RandomFunction[QueueingProcess[5, 11], {0, 150}, WorkingPrecision -> 20];EstimatedProcess[data, QueueingProcess[λ, μ], WorkingPrecision -> 20]Applications (2)
Model the mean daily temperature for Champaign in August 2012:
temp = TemporalData[TimeSeries, {{{20.5, 20.89, 22.5, 27.44, 26.5, 20.33, 18.83, 23.06, 20.83, 19.72,
14.89, 15.28, 18.11, 18.72, 17.5, 20.83, 17.94, 13.56, 16.44, 14.33, 14.72, 15.83, 17.28,
19.89, 20.44, 21.39, 24.89, 22.78, 22.83, 20.22, 24.4 ... te", 1}, 1,
{ResamplingMethod -> {"Interpolation", InterpolationOrder -> 1}, ValueDimensions -> 1,
MetaInformation -> {"Source" -> HoldForm[WeatherData["Champaign", "MeanTemperature",
{{2012, 8}, {2012, 8}, "Day"}]]}}}, True, 10.1];temp["Source"]DateListPlot[temp, Joined -> True, Filling -> Axis]eproc = EstimatedProcess[temp, ARProcess[20]]Compare CorrelationFunction of the model and the data:
ListPlot[TemporalData[CorrelationFunction[#, {30}]& /@ {eproc, temp}], Filling -> {1 -> {2}}, PlotStyle -> PointSize[Medium], PlotLegends -> {"Model", "Data"}]Forecast the daily exchange rates of the euro to the dollar from May 2012 through September 2012:
data = TemporalData[TimeSeries, {{{1.31, 1.31, 1.31, 1.3, 1.3, 1.3, 1.29, 1.29, 1.29, 1.27, 1.28, 1.28,
1.27, 1.26, 1.26, 1.26, 1.25, 1.24, 1.24, 1.23, 1.24, 1.24, 1.25, 1.26, 1.25, 1.26, 1.25, 1.25,
1.26, 1.26, 1.26, 1.26, 1.27, 1.27, 1.25, 1.2 ... yRange"]}, 1,
{"Discrete", 1}, {"Discrete", 1}, 1,
{ResamplingMethod -> {"Interpolation", InterpolationOrder -> 1},
MetaInformation -> {"Source" -> HoldForm[FinancialData]["EUR/USD",
{{2012, 5, 1}, {2012, 9, 30}}]}}}, True, 10.1];data["Source"]DateListPlot[data, Joined -> True, Filling -> Bottom]Fit an AR process to the exchange rates:
eproc = EstimatedProcess[data, ARProcess[3]]Forecast for 20 business days ahead:
forecast = TimeSeriesForecast[eproc, data, {20}]Plot the forecast with original data:
DateListPlot[{data, forecast}, Joined -> True, Filling -> Bottom]Properties & Relations (2)
EstimatedProcess estimates a parametric process:
data = RandomFunction[PoissonProcess[3], {0, 10 ^ 4}];EstimatedProcess[data, PoissonProcess[m]]FindProcessParameters returns a list of parameter estimates for the process:
FindProcessParameters[data, PoissonProcess[m]]EstimatedProcess estimates a parametric process:
data = RandomFunction[BernoulliProcess[0.4], {0, 10 ^ 5}];EstimatedProcess[data, BernoulliProcess[p]]EstimatedDistribution estimates a parametric distribution:
data = RandomVariate[BernoulliDistribution[0.4], 10 ^ 5];EstimatedDistribution[data, BernoulliDistribution[p]]History
Text
Wolfram Research (2012), EstimatedProcess, Wolfram Language function, https://reference.wolfram.com/language/ref/EstimatedProcess.html.
CMS
Wolfram Language. 2012. "EstimatedProcess." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/EstimatedProcess.html.
APA
Wolfram Language. (2012). EstimatedProcess. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/EstimatedProcess.html
BibTeX
@misc{reference.wolfram_2026_estimatedprocess, author="Wolfram Research", title="{EstimatedProcess}", year="2012", howpublished="\url{https://reference.wolfram.com/language/ref/EstimatedProcess.html}", note=[Accessed: 13-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_estimatedprocess, organization={Wolfram Research}, title={EstimatedProcess}, year={2012}, url={https://reference.wolfram.com/language/ref/EstimatedProcess.html}, note=[Accessed: 13-June-2026]}