当前位置: 首页 > wzjs >正文

网站用户体验网络销售怎么做

网站用户体验,网络销售怎么做,wordpress搬家后全部页面404,开发网站 要网站icp经营许可证吗问题 在项目中,需要对异常值进行剔除,需要一种鲁棒性比较好的方法,总结了一个实践方法。 方法 基于中位数和MAD(中位数绝对偏差)的鲁棒平均值计算算法的详细过程,按照您要求的步骤分解: 算法…

问题

在项目中,需要对异常值进行剔除,需要一种鲁棒性比较好的方法,总结了一个实践方法。

方法

基于中位数和MAD(中位数绝对偏差)的鲁棒平均值计算算法的详细过程,按照您要求的步骤分解:


算法过程

过程:
    1. 先使用中位数作为初始估计
    1. 计算MAD作为离散度度量
    1. 排除偏离中位数超过3倍MAD的数据点
    1. 对剩余数据计算平均值
输入
  • 数据集 data = [x₁, x₂, ..., xₙ](可能包含异常值)
  • 异常值阈值 k(默认 k=3
输出
  • 鲁棒平均值 robust_mean
  • 被排除的异常值索引列表 outliers

步骤 1:计算中位数(初始估计)

中位数对异常值不敏感,是数据中心的鲁棒估计。

median = np.median(data)  # 中位数

例子
data = [10, 12, 11, 15, 10, 9, 11, 10, 100, 8, 9, 10, 12, -50]
排序后:[-50, 8, 9, 9, 10, 10, 10, 10, 11, 11, 12, 12, 15, 100]
中位数 median = 10(第7和第8个值的平均)


步骤 2:计算MAD(离散度度量)

MAD(Median Absolute Deviation)是数据与中位数绝对偏差的中位数,对异常值鲁棒。

deviations = np.abs(data - median)  # 各点与中位数的绝对偏差
mad = np.median(deviations)         # MAD
mad = mad * 1.4826                  # 调整因子(使MAD≈标准差)

调整因子解释

  • 对于正态分布,标准差 σ ≈ 1.4826 × MAD
  • 调整后,k=3 对应正态分布的3σ准则(覆盖99.7%数据)。

例子
绝对偏差 deviations = [60, 2, 1, 5, 0, 1, 1, 0, 90, 2, 1, 0, 2, 40]
排序后:[0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 5, 40, 60, 90]
MAD = 1(中位数)
调整后 mad = 1.4826


步骤 3:排除异常值(3×MAD准则)

标记所有满足 |xᵢ - median| > k × mad 的点为异常值。

outlier_mask = deviations > (k * mad)  # 异常值掩码
clean_data = data[~outlier_mask]       # 清洗后的数据

例子k=3):
阈值 3 × 1.4826 ≈ 4.45
异常值条件:|xᵢ - 10| > 4.45

  • 100|100 - 10| = 90 > 4.45 → 异常
  • -50|-50 - 10| = 60 > 4.45 → 异常
    其他点均保留。

步骤 4:计算剩余数据的平均值

对清洗后的数据求算术平均。

robust_mean = np.mean(clean_data)

例子
清洗后数据:[10, 12, 11, 15, 10, 9, 11, 10, 8, 9, 10, 12]
鲁棒平均值 robust_mean = 10.5


完整代码实现

import numpy as npdef robust_mean(data, k=3):data = np.asarray(data)median = np.median(data)# 计算MAD并调整deviations = np.abs(data - median)mad = np.median(deviations) * 1.4826# 处理MAD为0的情况(所有数据相同)if mad == 0:return median, np.array([])# 标记并排除异常值outlier_mask = deviations > (k * mad)clean_data = data[~outlier_mask]return np.mean(clean_data), np.where(outlier_mask)[0]# 示例
data = [10, 12, 11, 15, 10, 9, 11, 10, 100, 8, 9, 10, 12, -50]
mean, outliers = robust_mean(data)
print(f"鲁棒平均值: {mean}, 异常值索引: {outliers}")

算法优点

  1. 鲁棒性:中位数和MAD均不受极端值影响。
  2. 自动阈值k=3 对应正态分布的3σ准则,可调整(如严格检测用 k=2.5)。
  3. 适用性:适合传感器数据(如鸡秤)、金融数据等含离群点的场景。

可视化

数据分布: [-50, 8, 9, 9, 10, 10, 10, 10, 11, 11, 12, 12, 15, 100]↑______中位数=10______↑           ↑异常值(-50)                    异常值(100)
http://www.dtcms.com/wzjs/807636.html

相关文章:

  • 上海网站哪个比较好网站内容的建设
  • 织梦后台生成网站地图钓鱼网站网站怎么做
  • 平台推广网站微信网站欣赏
  • 网站建设概况上海网站建设 网页制作
  • 水果网站建设规划书公司网站页面设计思路
  • 怎么样做一家装修竞标网站做爰小视频网站
  • 网站 蜘蛛标志设计要素
  • 建设跨境电商网站一个网站要多少钱
  • 南宁网站建设公司怎么接单在线做分析图的网站
  • 临猗县 保障住房和建设住建网站搜索引擎seo
  • 用数据库做学校网站广西南宁建设厅网站
  • 抚州做网站的公司wordpress关闭首页门面
  • 北京海淀国税局网站网站开发商业秘密保密协议
  • 网站建设的流程电子商务免费发布卖房信息平台
  • 做网站通常又什么开发完成555建筑网
  • 苏州网站建设软件收费网站开发需要什么费用
  • 通达oa 做网站西安曲江文化园区建设开发有限公司网站
  • 风景区介绍网站建设市场分析潍坊百度网站快速排名
  • 怎么把网站改为正在建设中优秀的手机网站案例
  • 西安网站建设培训中心代做网页制作网站
  • 网站及新媒体帐号内容建设四川做网站公司
  • 建设做网站wordpress免费主题好不好
  • 网站开发续签互利互通网站建设
  • 中核二二建设有限公司廊坊百度快速排名优化
  • 自己的网站如何给别人做有偿广告把wordpress装进app
  • 宁波网站排名优化报价看广告收益最高的软件
  • 网站建设合同 下载开源手机网站系统
  • 做网站需要做什么页面南昌网站建设好企业网站
  • 门户网站作用设计公司logo软件
  • 做施工的平台网站个人网站花多少钱