📅  最后修改于: 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
函数可以帮助我们确定数据的离散程度。当数据的平均绝对偏差较大时,表明数据较分散;当数据的平均绝对偏差较小时,表明数据较集中。