Fitting with Errors and Weighting

In some cases you may want certain data points to factor more heavily than others into the fitting calculations. So when selecting datasets for the fitting, you can also do weighting settings in the Data Selection page of the Settings tab to do weighted fitting.

Fitting with Errors and Weighting 01.png

After fitting, you will get the results with weighting as below:

Fitting with Errors and Weighting 02.png

When Iteration Algorithm is Levenberg Marquardt, it is only supported to add weight for Y data, while if it is Orthogonal Distance Regression (Pro Only), both X and Y weight are supported.

When there are multiple input datasets, you can specify different weighting methods for each Y and/or X data. The weights will be used in the procedure of reducing Chi-Square, you may refer to the Iteration Algorithm for the formula used in different cases.

Origin supports a number of weighting methods, some weight methods can be used for both L-M and ODR algorithm while some can only be used for L-M. See the table below for the formula to calculate weight in each case. Note that y here stands for function parameter name and it is not referring to the dependent variable.

Mini bulb.png y_i below are y values of independent variable to be fit, \hat y_i are the y values of fitted curve.
Option for both L-M and ODR Algorithm Weight Formula

No Weighting



w_{i}=\frac 1{\sigma _{i}^2}\,\! ,where \sigma _i\ are are the error bar sizes stored in error bar columns.


w_{i}=\frac 1{y_{i}}\,\!

Arbitrary Dataset

w_{i}=\frac 1{c_{i}^2}\,\! where c _{i}\,\! are the values of arbitrary data sets.

Direct Weighting


Variance ~ y^2

w_i=\frac 1{y_i^2}\,\!

Variance = a*y^b

w_i=\frac 1{ay_i^b}\,\!

Variance = c^b+a*y^b

w_i=\frac 1{c^b+ay^b}\,\!

Options only for L-M algorithm Weight Formula
Variance = a*y^b*c^(tlast−t)

w_i=\frac 1{ay_i^bc^{t_{last}-t_i}} where t_{last},t _{i} are the values of arbitrary data sets.

Variance ~ yfit

w_i=\frac 1{\hat y_i}

Variance ~ yfit^2

w_i=\frac 1{\hat y_i^2}

Variance = a*yfit^b

w_i=\frac 1{a\hat y_i^b}

Variance = c^b+a*yfit^b

w_i=\frac 1{c^b+a\hat y_i^b}

Variance = a*yfit^b*c^(tlast−t)

w_i=\frac 1{a\hat y_i^bc^{t_{last}-t_i}} where t_{last},t _{i} are the values of arbitrary data sets.