📜  平均绝对偏差程序(1)

📅  最后修改于: 2023-12-03 14:54:07.661000             🧑  作者: Mango

平均绝对偏差程序

简介

平均绝对偏差(Mean Absolute Deviation,MAD)是数据集中各数据离平均值的差的绝对值的总和除以观测次数,用于衡量一组数据的平均离散程度。在统计学和金融学中广泛应用。

MAD有时也被称为平均绝对误差、平均绝对偏离、平均误差等。

程序实现

下面是一个简短的 Python 代码,用于计算一个有序数列的平均绝对偏差。

def mean_absolute_deviation(data):
    """
    计算一个有序数列的平均绝对偏差

    Args:
        data: 一组数据,可以是列表、元组或 NumPy 数组

    Returns:
        平均绝对偏差
    """

    n = len(data)
    mean = sum(data) / n
    deviations = [abs(x - mean) for x in data]
    mad = sum(deviations) / n
    return mad
代码说明

这个函数接收一个有序数列 data,然后计算平均值和数据离平均值的绝对差值。之后,计算这些差值的总和,并将其除以观测次数,得到平均绝对偏差。

使用示例

下面是一些使用示例:

# 引入 NumPy 库
import numpy as np

# 在列表中计算 MAD
data = [1, 2, 3, 4, 5]
mad = mean_absolute_deviation(data)
print(mad)  # 1.2

# 在元组中计算 MAD
data = (1, 2, 3, 4, 5)
mad = mean_absolute_deviation(data)
print(mad)  # 1.2

# 在 NumPy 数组中计算 MAD
data = np.array([1, 2, 3, 4, 5])
mad = mean_absolute_deviation(data)
print(mad)  # 1.2

在这些示例中,我们计算了 data 中一些数字的平均绝对偏差。可以看到,无论数据类型是什么,我们都可以简单地使用 mean_absolute_deviation 函数,无需进行任何修改。

使用 mean_absolute_deviation 函数可以帮助我们确定数据的离散程度。当数据的平均绝对偏差较大时,表明数据较分散;当数据的平均绝对偏差较小时,表明数据较集中。