码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【阿里云天池大赛赛题解析】 刷书笔记 Lesson 1 数据探索基础知识


    文章目录

    • 数据探索基础知识
    • 1. 双变量分析
      • 1.1 计算相关性
      • 1.2 卡方检验
      • 1.3 小提琴图
    • 2. 缺失值
      • 2.1 处理方法
    • 3. 异常值
      • 3.1 检测方法
        • 3.1.1 箱线图检测法
        • 3.1.2 封顶方法
      • 3.2 处理方法
    • 4. 变量转换
      • 4.1 转换的方法
    • 5. 新变量的生成
    • 写在最后


    数据探索基础知识

    1. 双变量分析


    1.1 计算相关性

    import numpy as np
    X = np.array([65, 72, 78, 65, 72, 70, 65, 68])
    Y = np.array([72, 69, 79, 69, 84, 75, 60, 73])
    np.corrcoef(X, Y)
    
    • 1
    • 2
    • 3
    • 4
    array([[1.        , 0.64897259],
           [0.64897259, 1.        ]])
    
    • 1
    • 2

    1.2 卡方检验

    主要用于两个或两个以上的样本;比较理论频次和实际频次的吻合程度

    下面代码为使用iris数据集来演示卡方筛选与目标变量相关的特征

    from sklearn.datasets import load_iris
    from sklearn.feature_selection import SelectKBest
    from sklearn.feature_selection import chi2
    iris = load_iris()
    X,y  = iris.data, iris.target
    chiValues = chi2(X, y)
    X_new = SelectKBest(chi2, k = 2).fit_transform(X, y)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    1.3 小提琴图

    小提琴图可以展示在分析变量不同类别时,另外一个变量的分布情况

    下图为考虑在low、med、high三个变量时连续变量price的分布情况

    在这里插入图片描述

    # 使用 Seaborn包中的violinplot()函数
    
    • 1

    2. 缺失值

    2.1 处理方法

    • 删除
      List Wise Deletion
      Pair Wise Deletion

    • 数值填充
      平均值、众数、中值填充

    • 预测模型填充
      通过简历预测模型


    3. 异常值

    异常值使得模型增加错误方差、降低模型的拟合能力、降低正态性、影响回归、方差假设

    3.1 检测方法

    箱线图、直方图、散点图

    3.1.1 箱线图检测法

    不在-1.5IQR和1.5IQR之间的样本可以认为是异常值

    在这里插入图片描述

    四分位距(interquartile range, IQR),又称四分差。
    其中位数必然等于第三四分位数与第一四分位数的算术平均数,
    四分位数(Quartile)是统计学中分位数的一种,即把所有数值由小到大排列并分成四等份,处于三个分割点位置的数值就是四分位数。

    • 第一四分位数(Q1),又称“较小四分位数”,等于该样本中所有数值由小到大排列后第25%的数字。
    • 第二四分位数(Q2),又称“中位数”,等于该样本中所有数值由小到大排列后第50%的数字。
    • 第三四分位数(Q3),又称“较大四分位数”,等于该样本中所有数值由小到大排列后第75%的数字。

    3.1.2 封顶方法

    认为在第5和第95百分位数范围之外的任值都是异常值
    在这里插入图片描述


    3.2 处理方法

    • 删除
    • 转换
    • 填充
    • 区别对待
      存在大量的异常值,可以将数据分为两个不同的组别:异常值为一组、非异常值为一组

    两组分别建立模型、输出两组的合并


    4. 变量转换

    目的:在使用直方图、核密度等工具估计时,我们可能会发现一些变量的取值分布不均匀,会影响估计

    我们使用一些函数对变量进行映射、使其分布在合理的范围内

    在这里插入图片描述

    4.1 转换的方法

    • 标准化
    • 非线性关系转为线性关系
    • 倾斜分布对称

    几种常用的转换方法

    • 对数转换
    • 取平方根或者立方根
    • 变量分组
      对变量进行分类、将其分为高、中、低类,可以将这个方法用于连续性数

    5. 新变量的生成

    目的:新的变量可能与目标变量相关,有助于数据分析

    • 创建派生变量
      我们可以通过提取人名(提取前称Mr、Mrs)、住址(Guangdong、Shandong)来得到新的变量
    • 创建哑变量
      性别 转变为 (是否为男)、(是否为女)
      图3

    写在最后

    各位看官,都看到这里了,麻烦动动手指头给博主来个点赞8,您的支持作者最大的创作动力哟!
    才疏学浅,若有纰漏,恳请斧正
    本文章仅用于各位作为学习交流之用,不作任何商业用途,若涉及版权问题请速与作者联系,望悉知

  • 相关阅读:
    【LeetCode】【字符串】【位运算实现字母大小写转换】709. 转换成小写字母 Java实现
    Python二进制序列类型(二)array、struct和memoryview
    Unity ILRuntime热更新开发原则与接口如何绑定
    elementui 实现树形控件单选
    lv11 嵌入式开发 ARM体系结构理论基础2
    凸优化问题定义及其凸函数、凸集、仿射函数相关概念和定义
    中集世联达工业级成熟航运港口人工智能AI产品规模化应用,打造新一代高效能智慧港口和创新数字港口,全球港航人工智能能领军者中集飞瞳
    SSE 服务端消息推送
    nacos教程
    秋招,网申测评,认知能力测试
  • 原文地址:https://blog.csdn.net/LeungSr/article/details/126533635
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号