gives the value of the biweight midvariance of the elements in list.


gives the value of the biweight midvariance with scaling parameter c.


  • BiweightMidvariance is a robust dispersion estimator.
  • BiweightMidvariance is given by a weighted second-order central moment with Median as its center. Elements farther from the center have lower weights.
  • The width scale of the weight function is controlled by a parameter c. Larger c indicates more data values are included in the computation of the statistic, and vice versa.
  • For the list {x1,x2,,xn}, the value of the biweight midvariance estimator is given by , where , is Median[{x1,x2,,xn}], and is MedianDeviation[{x1,x2,,xn}].
  • BiweightMidvariance[list] is equivalent to BiweightMidvariance[list,9].
  • BiweightMidvariance[{{x1,y1,},{x2,y2,},}] gives {BiweightMidvariance[{x1,x2,}],BiweightMidvariance[{y1,y2,}],}.
  • BiweightMidvariance allows c to be any positive real number.


open allclose all

Basic Examples  (3)

BiweightMidvariance of a list:

BiweightMidvariance of columns of a matrix:

BiweightMidvariance of a list with scaling factor 8:

Scope  (7)

Exact input yields exact output:

Approximate input yields approximate output:

Biweight midvariance with different scaling parameters:

Biweight midvariance for a matrix gives columnwise estimate:

Biweight midvariance of a large array:

Find a biweight midvariance of a TimeSeries:

The biweight midvariance depends only on the values:

Biweight midvariance works with data involving quantities:

Applications  (5)

Obtain a robust estimate of dispersion when extreme values are present:

Sample variance is heavily influenced by extreme values:

Identify periods of high volatility in stock data:

Smooth the data using the square root of a five-year moving biweight midvariance:

Compute biweight midvariance for slices of a collection of paths of a random process:

Choose a few slice times:

Plot biweight midvariances over these paths:

Find the biweight midvariance of the heights for the children in a class:

Plot the square root of the biweight midvariance with respect to the median:

Consider data from standard normal distribution with outliers modeled by another normal distribution with large spread:

Test the data against standard normal distribution:

Compute the biweight midvariance:

Remove outliers by picking data points that are within three times the square root of biweight midvariance from the sample median:

Test the new data against standard normal distribution:

Properties & Relations  (3)

Compute the biweight midvariance of a sample:

Values outside of the interval have no effect on the statistic. Here is the sample median and is the median absolute deviation. is a scaling parameter with default value equal to 9:

The shape of the weight function w(x) being used in computing biweight midvariance:

Multiply the smallest and the largest values in the sample by 2 and compute the biweight midvariance again:

BiweightMidvariance and Variance are dispersion estimators of data:

Resample the data to generate bootstrap estimates:

Compute the standard deviation/mean ratio of the bootstrap estimates for each estimator; smaller value indicates more accurate dispersion measure:

BiweightMidvariance converges to the second central moment for large values of the parameter c:

Possible Issues  (1)

Biweight midvariance may be undefined for vectors of an even number of elements with a small scaling parameter:

For vectors of odd length and relatively small c, biweight midvariance might assume very large values:

Wolfram Research (2017), BiweightMidvariance, Wolfram Language function,


Wolfram Research (2017), BiweightMidvariance, Wolfram Language function,


Wolfram Language. 2017. "BiweightMidvariance." Wolfram Language & System Documentation Center. Wolfram Research.


Wolfram Language. (2017). BiweightMidvariance. Wolfram Language & System Documentation Center. Retrieved from


@misc{reference.wolfram_2024_biweightmidvariance, author="Wolfram Research", title="{BiweightMidvariance}", year="2017", howpublished="\url{}", note=[Accessed: 24-July-2024 ]}


@online{reference.wolfram_2024_biweightmidvariance, organization={Wolfram Research}, title={BiweightMidvariance}, year={2017}, url={}, note=[Accessed: 24-July-2024 ]}