统计量MAD

1.定义

MAD(Median absolute deviation, 中位数绝对偏差)是单变量数据集中样本差异性的稳健度量。mad是一个健壮的统计量,对于数据集中异常值的处理比标准差更具有弹性,可以大大减少异常值对于数据集的影响。
对于单变量集 X={X1,X2,X3,...,Xn}

,MAD的计算公式为:

MAD(X)=median(|Ximedian(X)|)

2.示例代码

double vector_stdv_mad( vector<double> residues)
{
    if( residues.size() != 0 )
    {
        // Return the standard deviation of vector with MAD estimation
        int n_samples = residues.size();
        sort( residues.begin(),residues.end() );
        double median = residues[ n_samples/2 ];
        for( int i = 0; i < n_samples; i++)
            residues[i] = fabsf( residues[i] - median );
        sort( residues.begin(),residues.end() );
        double MAD = residues[ n_samples/2 ];
        return MAD;
    }
    else
        return 0.0;
}

猜你喜欢

转载自blog.csdn.net/danmeng8068/article/details/80697201
MAD