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

数学建模中常用的数据处理方法

常用的数据处理方法

本文参考 B站西电数模协会的讲解视频 ,只作笔记提纲,想要详细学习具体内容请观看 up 的学习视频。国赛的 C 题一般数据量比较大。

这里介绍以下两种方法:
数据预处理方法
数据分析方法

数据预处理方法

1. 数据清洗

为了提高数据质量和适用所做数据分析的软件

 (1) 缺失值
  • 删除法:例如调查人口信息,发现“身高”这一项缺失 40%,直接删除该项指标
  • 替换法:适用于数据基数较大,对个体精度要求不高(例如人口的数量、年龄、经济产业情况等统计数据)
    • 人口的身高、年龄等数据可以用均值补缺
    • 人口的性别、文化程度、事件调查的满意度可以用出现次数最多的值(众数)补缺
  • 插值法:适用于对个体精度有要求
    • 常用插值法:分段线性插值、牛顿插值、拉格朗日多项式插值、Hermite插值、三次样条插值和克里金插值
    • 牛顿插值
      • 根据固定公式,构造近似函数,补上缺失值,适用性强
      • 会出现龙格现象,即区间边缘处有不稳定振荡,不适合对导数有要求的题目
      • 适用赛题:只追求函数值精确而不关心变化的数据。例如:热力学温度、地形测量、定位等
    • 三次样条插值
      • 用分段光滑的曲线去插值,函数曲线连续可导
      • 适用赛题:函数值精确度要求高,有突变的数据。例如:零件加工,水库水流量,机器人轨迹等
 (2) 异常值
  • 查找异常数据:
    • 正态分布 3 σ 3\sigma 3σ 原则
      • 适用题目:总体符合正态分布,例如人口身高、测量误差、生产加工质量、考试成绩等
      • 不适用题目:总体符合其他分布,例如固定时间内到公交站、地铁站人数符合泊松分布等
    • 箱型图法
      • 流程:箱型图法
      • 普遍适用
  • 删去异常值,当作缺失值处理

2. 数据变换

数据变换就是转化成适当的形式,以满足软件或分析理论的需要

(1) 简单函数变换
  • 将不具有正态分布的数据变成有正态分布的数据,常用的方法有开方、取对数、Box-Cox变换等
  • 利用对数或差分运算将非平稳序列转化成平稳序列
(2) 数据的规范化

        规范化就是剔除掉变量量纲上的影响,比如直接比较身高和体重的差异,单位的不同和取值范围的不同让这件事不能直接比较

  • 最小 – 最大规范化
    • 对数据进行线性变换,将其范围变成 [0,1]
    • 规范公式:(原始值-最小值)/(最大值-最小值)
    • 不适用情形:原始数据存在小部分很大或很小的数据时,会造成大部分数据规范化后接近于 0/1,区分度不大
  • 零 – 均值规范化
    • 处理后的数据均值等于 0,标准差为 1
    • 规范公式:(原始值-平均值)/标准差
    • 注意:得到的是给定数据距离其均值多少个标准差,结果
      没有实际意义,仅用于比较
  • 小数定标规范化
    • 移动属性值的小数位数,将属性值映射到 [-1,1]
    • 规范公式:原始值/10^k
    • 注意: k k k 取决于数据属性中数值的最大绝对值

数据分析方法

        通过采用合理的数据处理方法,将实际问题化繁为简,将定性分析变为定量分析,获得科学可靠的结论

1. 回归分析

        在统计学中,回归分析是确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法

  • 根据自变量个数,有一元回归和多元回归
  • 根据因变量与自变量的关系,有线性回归和非线性回归

2. 插值与拟合

3. 数据降维

(1) 主成分分析
  • 将多个有一定相关性的指标进行线性组合,以最少的维度解释原数据中尽可能多的信息为目标进行以降维
(2) 因子分析
  • 将原始变量分解为两部分:一部分是公共因子的线性组合,浓缩了原始变量中的绝大部分信息。另一部分是与公共因子无关的特殊因予,反映了公共因子线性组合与原始变量间的差距。
(3) 二者区别:

示例:现有 10 位同学的语文、数学、英语、物理、化学、政治、历史、地理、生物的成绩数据。
主成分分析:文科和理科
因子分析:计算能力、阅读能力、逻辑能力、记忆能力

http://www.lryc.cn/news/399767.html

相关文章:

  • C嘎嘎:函数模版和类模版
  • 使用 Apache Pulsar 构建弹性可扩展的事件驱动应用
  • 【国产开源可视化引擎Meta2d.js】视频
  • 零信任网络安全
  • Python酷库之旅-第三方库Pandas(022)
  • 数据建设实践之大数据平台(一)准备环境
  • VUE2用elementUI实现父组件中校验子组件中的表单
  • 人工智能算法工程师(中级)课程9-PyTorch神经网络之全连接神经网络实战与代码详解
  • UDP网络通信(发送端+接收端)实例 —— Python
  • 从零开始实现大语言模型(五):缩放点积注意力机制
  • PTA 7-15 希尔排序
  • 【密码学】分组密码的设计原则
  • 深入解析【C++ list 容器】:高效数据管理的秘密武器
  • NFS服务器、autofs自动挂载综合实验
  • 自动驾驶事故频发,安全痛点在哪里?
  • SpringSecurity框架【认证】
  • python安全脚本开发简单思路
  • WPF学习(4) -- 数据模板
  • GuLi商城-商品服务-API-品牌管理-JSR303分组校验
  • PyTorch DataLoader 学习
  • TCP传输控制协议二
  • 【学习笔记】无人机(UAV)在3GPP系统中的增强支持(五)-同时支持无人机和eMBB用户数据传输的用例
  • 使用F1C200S从零制作掌机之debian文件系统完善NES
  • Vue 3 与 TypeScript:最佳实践详解
  • PyMysql error : Packet Sequence Number Wrong - got 1 expected 0
  • MVC 生成验证码
  • OSPF.综合实验
  • 云计算【第一阶段(29)】远程访问及控制
  • 2024前端面试真题【CSS篇】
  • python中设置代码格式,函数编写指南,类的编程风格