Python3数据分析与挖掘建模(3)探索性数据分析

news2024/12/23 9:55:31

1. 概述

探索性数据分析(Exploratory Data Analysis,EDA)是一种数据分析的方法,用于探索和理解数据集的特征、关系和分布等。EDA旨在揭示数据中的模式、异常值、缺失值等信息,并为后续的分析和建模提供基础。以下是关于探索性数据分析的一些重要概念和方法:

(1)数据摘要:通过计算描述性统计量,如均值、中位数、标准差、最小值、最大值等,对数据集的特征进行摘要和总结。这些统计量可以帮助了解数据的中心趋势、离散程度和分布情况。

(2)数据可视化:利用图表、图形和可视化技术,将数据以直观的方式展示出来。常用的可视化方法包括直方图、箱线图、散点图、折线图等。通过数据可视化,可以发现数据的分布、趋势、异常值和关系等特征。

(3)缺失值处理:探索性数据分析中常常需要处理缺失值。可以通过计算缺失值的数量和比例来了解数据缺失的情况,并根据具体情况选择合适的方法进行处理,如删除缺失值、填充缺失值等。

(4)异常值检测:通过观察数据的分布和统计指标,识别可能存在的异常值或离群点。异常值可能是数据采集或记录错误,或者表示了潜在的特殊情况。在探索性数据分析中,可以使用箱线图、散点图等方法来辅助异常值检测。

(5)变量之间的关系探索:通过相关性分析、散点图矩阵、热力图等方法,探索不同变量之间的关系。这可以帮助了解变量之间的相关性、依赖关系和影响因素。

探索性数据分析是数据分析的重要环节,它可以帮助熟悉数据、发现数据中的规律和异常,为后续的数据建模、特征工程和推断性分析提供基础。在进行探索性数据分析时,需要充分利用统计和可视化工具,同时保持灵活性和开放性的思维,以发现潜在的数据洞察和问题。

2. 探索性数据分析(单因子与对比分析)可视化

在探索性数据分析中,可以使用单因子分析和对比分析来探索数据,并通过可视化方法呈现结果。下面是一些常用的可视化技术和图表,适用于单因子和对比分析:

2.1 单因子分析可视化:

(1)直方图:将数据按照不同的区间进行分组,并用矩形条表示每个区间的频数或频率。直方图可以显示数据的分布情况和形状。

(2)箱线图:通过五数概括(最小值、下四分位数、中位数、上四分位数、最大值),展示数据的中心趋势和离散程度。箱线图还可以显示异常值和离群点。

 (3)密度图:通过在数据分布曲线下方填充面积,展示数据的概率密度。密度图可以显示数据的分布形态和峰值。

 (4)折线图:将数据按照顺序和连线方式展示,可以显示数据的变化趋势和趋势方向。

2.2 对比分析可视化:

(1)柱状图:用垂直或水平的矩形条表示不同类别或组别的数据,并可比较它们之间的差异。柱状图常用于对比不同组别的数据。

 (2)帕累托图:将数据按照贡献程度排序,并用累积百分比的折线图展示。帕累托图可以帮助确定主要因素或贡献最大的类别。

 (3)散点图:用二维坐标轴表示两个变量的关系,并以散点的形式展示数据点。散点图可以用于比较两个变量之间的关系和趋势。

 (4)雷达图:以多个坐标轴表示不同变量,通过将数据点连接起来形成多边形区域,展示多个变量之间的对比关系。雷达图适用于多维度的对比分析。

以上是常见的可视化方法,可以根据具体情况和数据特点选择合适的图表进行探索性数据分析。这些可视化方法能够直观地呈现数据,帮助发现数据中的规律、异常和差异,并为进一步分析和决策提供参考。

3. 数据示例

数据源文件:

 读取数据流程

import pandas as pd
# 读取数据
df=pd.read_csv("data/HR.csv")
# 设置显示选项,将最大列数设置为None,以显示所有列
pd.set_option('display.max_columns', None)
# 使用head()查看DataFrame
df.head(10)
Out[6]: 
   satisfaction_level  last_evaluation  number_project  average_monthly_hours   
0                0.38             0.53               2                    157  \
1                0.80             0.86               5                    262   
2                0.11             0.88               7                    272   
3                0.72             0.87               5                    223   
4                0.37             0.52               2                    159   
5                0.41             0.50               2                    153   
6                0.10             0.77               6                    247   
7                0.92             0.85               5                    259   
8                0.89             1.00               5                    224   
9                0.42             0.53               2                    142   
   time_spend_company  Work_accident  left  promotion_last_5years department   
0                   3              0     1                      0      sales  \
1                   6              0     1                      0      sales   
2                   4              0     1                      0      sales   
3                   5              0     1                      0      sales   
4                   3              0     1                      0      sales   
5                   3              0     1                      0      sales   
6                   4              0     1                      0      sales   
7                   5              0     1                      0      sales   
8                   5              0     1                      0      sales   
9                   3              0     1                      0      sales   
   salary  
0     low  
1  medium  
2  medium  
3     low  
4     low  
5     low  
6     low  
7     low  
8     low  
9     low  

通过调用pd.set_option('display.max_columns', None),将display.max_columns选项设置为None,可以显示所有列。然后使用print(df.head())打印DataFrame,将会显示所有列的数据。

注意:当DataFrame具有很多列时,可能会导致输出结果在控制台中显示不全,因为控制台有一定的宽度限制。在这种情况下,你可以使用水平滚动条或将结果导出到文件中来查看完整的列数据。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/582224.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

20-01 走进微服务与Spring Cloud

Java架构师系列导航目录 认识SpringCloud——外带全家桶 Alibaba组件库 Nacos 中心化动态配置 持久化规则服务发现(DNS RPC)权重路由无缝SC K8s Sentinel(流控组件) 突发流量、削峰填谷、流量整形实时熔断实时监控大盘 S…

汽车和地铁的无人驾驶了解

01汽车无人驾驶技术 汽车相对地铁列车,控制设备的安装空间较为有限,不同车辆的个体差异较大,其无人驾驶技术的实现方案需要更简约,主流的方案通常是通过多种车载传感器(如摄像头、激光雷达、毫米波雷达、北斗/GPS、惯性…

实时频谱-3.1实时频谱分析仪测量

RSA 测量类型 泰克RSA 可以在频域、时域、调制域和统计域中工作。 频域测量 基本频域测量是实时 RF 数字荧光显示(DPX)频谱显示测量、频谱显示测量和频谱图显示测量功能。 DPX 频谱 DPX 频谱测量对 RSA 发现其它分析仪漏掉的难检信号的能力至关重要。在所有泰克 RSA 中&am…

聚观早报|知乎发布搜索聚合开始内测;苹果7月关闭我的照片流服务

今日要闻:知乎发布“搜索聚合”即日开启内测;iOS版ChatGPT下载量突破50万次;苹果7月关闭“我的照片”流服务;首款国产介入手术机器人亮相;马斯克回应多年前嘲笑比亚迪 知乎发布“搜索聚合”即日开启内测 5 月 28 日消…

ChatGTP全景图 | 背景+技术篇

引言:人类以为的丰功伟绩,不过是开端的开端……我们在未来100年取得的技术进步,将远超我们从控制火种到发明车轮以来所取得的一切成就。——By Sam Altman 说明:ChatGPT发布后,我第一时间体验了它的对话、翻译、编程、…

Linux-0.11 kernel目录进程管理asm.s详解

Linux-0.11 kernel目录进程管理asm.s详解 模块简介 该模块和CPU异常处理相关,在代码结构上asm.s和traps.c强相关。 CPU探测到异常时,主要分为两种处理方式,一种是有错误码,另一种是没有错误码,对应的方法就是error_c…

Logisim 头歌 16位海明编码电路设计 图解及代码(计算机组成原理)

努力是为了不平庸~ 学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。 急的同学请直接点击目录跳到下方解答处!! 目录 图解: 代码题解(免费): 实…

SpringCloudConfigServer配置刷新优化方案

前一文章《SpringCloudConfigServer配置中心使用与刷新详解》 介绍了Spring Cloud原生配置中心的部署方案,以及配置变更时的刷新方案。 通过该文可以看到: 第一种方案无法同时刷新单个服务的所有实例第二种方案依赖于消息中间件(RabbitMQ或k…

自动驾驶汽车的安全技术特点

“安全第一”是自动驾驶的核心理念和价值观。 自动驾驶车辆的整体系统安全设计是一项复杂的系统工程, 涉及车载自动驾驶系统的核心算法策略设计、 硬件和软件冗余安全设计、远程云代驾技术、 全流程测试验证技术等, 并遵循功能安全(ISO 2626…

《数据库应用系统实践》------ 酒店客房管理系统

系列文章 《数据库应用系统实践》------ 酒店客房管理系统 文章目录 系列文章一、需求分析1、系统背景2、 系统功能结构(需包含功能结构框图和模块说明)3.系统功能简介 二、概念模型设计1.基本要素(符号介绍说明&…

品种小组2期—凯利公式在RFI策略中的运用

量化策略开发,高质量社群,交易思路分享等相关内容 大家好,今天我们来聊一聊松鼠2期V2版本的阶段内容——凯利公式在RFI择时框架上的运用。 松鼠品种小组2期第1版策略、讲解视频已完结,该期小组我们分享了全新“普适性、自适应”择…

0基础学习VR全景平台篇第32章:场景功能-嵌入视频

大家好,欢迎观看蛙色VR官方系列——后台使用课程! 一、本功能将用在哪里? 嵌入功能可对VR全景作品嵌入【图片】【视频】【文字】【标尺】四种不同类型内容; 本次主要带来视频类型的介绍,通过嵌入视频功能,…

python+django+vue关爱无主狗流浪狗动物领养公益网站

很多的家庭都开始有养个小宠物的习惯,平时可以排解寂寥。随着近些年来大家养宠物的数量逐日剧增,人类对自己行为的规范与责任感渐渐的缺失,从而造成社会上的流浪动物也越来越多。流浪狗的伤人的事件则更多的出现在了报纸,电视,网络上。国家社…

git 项目演练:007

接下来进行项目演练,这是一个项目提交到git一个完整过程 1. 创建一个项目, 如下,我创建了一个“测试项目” 2. 将项目添加到git管理仓库,打开Git Bash, cd到“测试项目”中 3. 使用git init 命令将项目添加&#xff0c…

python基于pygame库实现弹幕效果(多行显示,速度不同,颜色不同,循环显示)

一、实现目标 使用python实现类似弹幕的显示效果,弹幕文本存储在txt文件中,弹幕多行显示,弹幕颜色不同有区别,弹幕的速度不一,弹幕要循环显示。 弹幕文本数据:danmu.txt 永远的神 哥哥,好帅啊 啊啊啊啊 太好看啦 666 爱了爱了 啦啦啦啦啦啦 牛逼!牛逼!牛逼! 厉害啊…

5G的遮羞布又被撕了,只是这次是韩国,5G为何变成如此模样?

日前韩国公平交易委员会发布声明,对韩国三大运营商重罚336亿韩元,原因是韩国夸大5G网速,实际网速不到理论速率的十分之一,可以说韩国撕下了5G的遮羞布。 韩国公平交易委员会指出运营商宣传5G的时候强调5G的理论速度可以达到10Gbps…

JavaScrip练习

HTMLJS计算器 <!DOCTYPE html> <html> <head><title>Calculator</title> </head> <body> <!-- 计算器显示 --> <input type"text" id"display" disabled> <br><!--计算器按钮onclick &am…

数据偏度介绍和处理方法

偏度&#xff08;skewness&#xff09;是用来衡量概率分布或数据集中不对称程度的统计量。它描述了数据分布的尾部&#xff08;tail&#xff09;在平均值的哪一侧更重或更长。偏度可以帮助我们了解数据的偏斜性质&#xff0c;即数据相对于平均值的分布情况。 有时&#xff0c;正…

自主品牌份额持续提升!福特CEO表态,中国车企才是竞争对手

2023年1-4月&#xff0c;中国市场自主品牌乘用车新车交付275.13万辆&#xff0c;份额占比48.63%&#xff0c;两项数字分别比上年同期增长4.68%&#xff0c;以及提升约3个百分点。其中&#xff0c;新能源汽车继续成为主要推动因素。 “中国电动汽车制造商是我们的主要竞争对手&a…

使用Vuex进行状态管理

在Vue.js应用程序中&#xff0c;状态管理是一个重要的主题。当应用程序变得复杂&#xff0c;组件之间的状态共享和通信变得困难&#xff0c;这时候使用Vuex就会变得十分有用。Vuex是一个专门为Vue.js设计的状态管理库&#xff0c;它提供了一个集中式的状态管理方案&#xff0c;…