3.Python数据分析—数据分析入门知识图谱索引(知识体系中篇)

3.Python数据分析—数据分析入门知识图谱&索引-知识体系中篇

  • 一·个人简介
  • 二·数据获取和处理
    • 2.1 数据来源:
    • 2.2 数据清洗:
      • 2.2.1 缺失值处理:
      • 2.2.2 异常值处理:
    • 2.3 数据转换:
      • 2.3.1 数据类型转换:
      • 2.3.2 数据编码:
    • 2.4 数据合并与重塑:
      • 2.4.1 数据合并:
      • 2.4.2 数据拼接:
      • 2.4.3 数据重塑:
  • 三·数据探索与分析
    • 3.1 描述性统计分析
    • 3.2 数据可视化原则和技巧
    • 3.3 探索性数据分析(EDA)
    • 3.4 相关性分析和假设检验
      • 3.4.1 相关性分析
      • 3.4.1 假设检验

一·个人简介

🏘️🏘️个人主页:以山河作礼。
🎖️🎖️:Python领域新星创作者,CSDN实力新星认证,CSDN内容合伙人,阿里云社区专家博主,新星计划导师,在职数据分析师。
🎉🎉免费学习专栏

1. 《Python基础入门》——0基础入门
2.《Python网络爬虫》——从入门到精通
3.《Web全栈开发》——涵盖了前端、后端和数据库等多个领域
4.《【30天】Python从入门到精通详解版》——30天入门到精通(持续更新中)
🎉🎉《机器学习算法专栏目前阶段免费(持续更新中)!!!
🪐🪐欢迎免费订阅!欢迎大家一起学习,一起成长!!
💕💕悲索之人烈焰加身,堕落者不可饶恕。永恒燃烧的羽翼,带我脱离凡间的沉沦。

二·数据获取和处理

2.1 数据来源:

数据获取和处理是数据分析和机器学习项目的关键步骤。在这个阶段,首先确定数据的来源,然后采用适当的方法来收集和整理数据,以便于后续的分析和建模工作。
在这里插入图片描述

以下是几种常见的数据来源及其处理方法

  1. 文件:数据经常存储在各种文件中,如CSV、Excel、JSON或XML等格式。处理这些文件通常包括读取文件内容,解析数据结构,以及清洗数据(如处理缺失值、异常值、重复记录等)。
  2. 数据库:数据可能存储在关系型数据库(如MySQL、PostgreSQL、Oracle)或非关系型数据库(如MongoDB、Cassandra)中。从数据库中获取数据通常涉及到编写SQL查询或使用特定的数据库API来提取所需的数据集。
  3. API:许多现代服务提供了API(应用程序编程接口),允许开发者通过HTTP请求获取数据。这可能包括RESTful
    API、GraphQL API或其他类型的Web服务。使用API时,需要了解API的认证机制、请求参数、响应格式以及速率限制等。
  4. 网络爬虫:对于网页上的数据,可以使用网络爬虫(Web
    Scraping)技术来抓取数据。这通常涉及到发送HTTP请求到网页,解析HTML或JSON响应,然后提取所需的信息。
  5. 实时数据流:某些应用需要处理实时数据流,如来自传感器、日志文件或消息队列的数据。处理实时数据流通常涉及到使用特定的流处理框架和技术。
  6. 外部服务:有时数据来源于第三方服务,如天气信息、金融市场数据等。这些服务可能提供专门的接口或数据集供用户使用。

2.2 数据清洗:

在实际操作中,选择哪种方法取决于数据的性质、异常值和缺失值的数量以及分析的目标。通常,数据处理前需要进行彻底的探索性数据分析(EDA),以了解数据的特点和问题的本质。可以通过箱线图分析来检测异常值。在处理过程中,应当谨慎考虑每种方法的适用性和可能带来的影响,以确保数据的完整性和分析结果的可靠性。

在这里插入图片描述

以下是针对缺失值和异常值的一些处理方法

2.2.1 缺失值处理:

  • 删除:直接将含有缺失值的记录从数据集中移除。这种方法简单直接,但可能会导致信息的丢失,尤其是在缺失值较多的情况下。
  • 填充:使用特定的值来填补缺失的数据。常用的填充方法包括使用均值、加权均值、中位数(对于数值型数据),或使用众数(对于分类型数据)。
  • 不处理:在某些情况下,选择不对缺失值进行处理,这可能会影响后续分析的结果。
  • 插值法填充:对于时间序列数据或其他有序数据,可以使用插值法来估计缺失值,如线性插值或多项式插值等。
  • 模型预测填充:利用其他变量构建模型来预测缺失值,这种方法可以更好地保留数据间的关系。

2.2.2 异常值处理:

  • 删除:直接将含有异常值的记录删除,这可能会同时移除潜在的有效信息。
  • 视为缺失值:将异常值视为缺失值,然后按照缺失值处理的方法进行处理。
  • 平均值修正:使用前后两个观测值的平均值来修正异常值,适用于时间序列等有序数据。
  • 不处理:直接在具有异常值的数据集上进行数据分析,但这可能会影响分析结果的准确性。

2.3 数据转换:

数据转换通常包括将数据从一种类型更改为另一种类型,以及将数据重新编码以适应特定的分析或存储需求。

在这里插入图片描述

2.3.1 数据类型转换:

  • 数据类型转换是将数据值从一个类型转换为另一个类型的过程。这种转换可能是为了确保数据的兼容性
  • 当从低精度类型(如int)向高精度类型(如double)转换时,通常不会出现问题。但是,从高精度转向低精度时可能会出现数据丢失的情况
  • 在编程中,类型转换可以通过强制类型转换操作实现,例如在C语言中使用(type)value的形式进行转换。

2.3.2 数据编码:

  • 数据编码是数据预处理的一个重要方面,它涉及到将定性数据(如文本)转换为定量数据(如数字),以便进行数学计算或统计分析。
  • 常见的数据编码技术包括独热编码(One-Hot Encoding),标签编码(Label Encoding),以及二进制编码等。
  • 数据编码的目的是为了让机器学习算法能够更好地理解和处理数据,尤其是对于分类变量的处理。

2.4 数据合并与重塑:

数据合并与重塑是数据处理中的常见任务,涉及到结合和改变数据的结构以便于分析。

2.4.1 数据合并:

  • 数据合并通常指的是将两个或多个数据集按照一定的键(如ID或时间)结合起来。这在pandas中可以通过merge()函数实现,类似于数据库中的JOIN操作。
  • concat()方法用于将多个DataFrame或Series沿着一条轴(行或列)连接起来,类似于数据库中的UNION操作。
  • combine_first()方法用于在两个DataFrame对象上调用,将第二个对象的值填充到第一个对象的缺失值中。

2.4.2 数据拼接:

  • 数据拼接通常指的是在现有的数据结构上添加新的数据,这可以通过pandas的append()方法实现。

2.4.3 数据重塑:

  • 数据重塑涉及到改变数据的格式或结构,以便更好地适应分析需求。pandas提供了多种重塑数据的方法,如pivot()stack()unstack()等。
  • 层次化索引也是重塑数据的一个强大工具,它允许我们在多个层次上对数据进行分组和操作。

三·数据探索与分析

3.1 描述性统计分析

描述性统计分析是利用统计学的方法对数据进行总结和描述的过程,它涉及到数据的收集、整理、汇总和展示。

  1. 数据的集中趋势分析:这通常包括计算平均值中位数众数等统计量,用以描述数据的典型值或中心位置。
  2. 数据的离散程度分析:通过计算标准差方差极差等来评估数据的波动大小或分散程度。
  3. 数据的分布分析:分析和描述数据的整体分布情况,可能会用到频率分布表直方图等工具。
  4. 数据的频数分析:统计每个类别的观测次数,以了解不同类别的频度。
  5. 基本的统计图形:使用条形图饼图箱线图等图形工具来直观展示数据特征。
  6. 交叉分析法:通过交叉表格来分析两个或多个变量之间的关系。
  7. 对比分析法:比较不同组别或时间点的数据,以发现差异或趋势。
  8. 平均分析法:通过计算平均数来分析数据的总体水平。

3.2 数据可视化原则和技巧

数据可视化的原则和技巧主要在于清晰、有效地传达信息,同时也需考虑美观性和读者的体验

  1. 明确可视化目标:在开始之前,需要明确数据可视化的目的,是为了揭示模式、趋势还是说服观众采取某种行动。这将影响所选择的图表类型和方法。
  2. 选择合适的图表类型:根据目标和数据特性选择最合适的图表类型,如折线图适合展示趋势,柱状图便于比较不同类别等。
  3. 数据处理与清洗:在进行可视化前确保数据的准确性和一致性,处理异常值、缺失值和去除冗余数据,以增强可信度。
  4. 客观性原则:避免个人偏好影响数据展示,确保客观性和准确性。选择图表类型和配色应基于数据特征而非个人喜好。
  5. 考虑时间序列和空间分布:对于有时间或空间特征的数据,要选择合适的方法来展示周期性、趋势性或区域差异。
  6. 标签与注释:合理使用标题、轴标签、图例等元素,辅以解释性文本,帮助快速理解图表含义。
  7. 色彩与对比度:恰当运用色彩和对比度可以突出重点,使视觉元素区分明显,但需注意色彩不宜过多以免造成混乱。
  8. 字体选择:使用简单易读的字体,排版应当服务于清晰度和可读性而非视觉效果。
  9. 条形图基线从零开始:这保证了比较的准确性,防止误导读者。
  10. 与业务需求相结合:将数据可视化与实际业务场景紧密结合,确保其对决策支持有实质性的帮助。

3.3 探索性数据分析(EDA)

探索性数据分析(EDA)是一种用于理解数据集特征的初步分析方法,它有助于揭示数据中的模式、异常值和结构

在这里插入图片描述

  1. 数据概述:初步了解数据集的内容,包括数据的维度、类型和基本统计描述(如均值、中位数、标准差等)。
  2. 数据清洗:处理缺失值、异常值和重复记录,确保数据质量。
  3. 数据可视化:通过图表和图形(如散点图、直方图、箱线图等)直观地展示数据分布和变量间的关系。
  4. 特征工程:基于对数据的理解,选择或构建对预测结果有贡献的特征。
  5. 假设检验:对数据进行统计检验,以验证某些假设或理论。
  6. 建立模型:使用经过探索性分析准备的数据来建立预测或分类模型。

3.4 相关性分析和假设检验

相关性分析和假设检验是统计学中用于探究数据之间关系和测试理论假设的重要方法。

3.4.1 相关性分析

  • 相关性分析旨在探讨两个或多个变量之间的相关程度,例如,研究降水量与温度之间的关系。在进行分析之前,通常通过散点图初步了解变量间的关系情况。如果变量之间存在某种相关性,那么大部分的数据点就会相对密集并以某种趋势呈现。
  • 相关性的强度和方向通常通过计算相关系数(如Pearson相关系数)来量化,该系数的值介于-1到+1之间,其中+1表示完全正相关,0表示无相关,-1表示完全负相关。

3.4.1 假设检验

  • 假设检验是一种统计方法,用于检验关于总体参数的假设是否成立。它包括原假设(H0)和备择假设(H1)。原假设通常是研究者想要拒绝的假设,而备择假设是研究者想要接受的假设。
  • 进行假设检验时,会计算一个p值,该值表示在原假设为真的情况下,观察到的样本数据(或更极端的数据)出现的概率。如果p值小于预先设定的显著性水平(通常是0.05或0.01),则拒绝原假设,认为数据提供了足够的证据支持备择假设。

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

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

相关文章

【Java程序设计】【C00360】基于Springboot的考研互助交流平台(有论文)

基于Springboot的考研互助交流平台(有论文) 项目简介项目获取开发环境项目技术运行截图 项目简介 项目获取 🍅文末点击卡片获取源码🍅 开发环境 运行环境:推荐jdk1.8; 开发工具:eclipse以及i…

java常用应用程序编程接口(API)——IO流概述及字节流的使用

前言: IO流和File是用于把数据存放在硬盘里的工具。File可以把文件存至硬盘,但不能更改里面的数据。通过IO流可以改写硬盘里的数据。整理下学习笔记,打好基础,daydayup!!! IO流 I指Input,称为输入流:负责把…

智慧医疗包括哪些方面?智慧医疗发展前景如何?

近年来,随着云计算、物联网(internet of things,IOT)、移动互联网、大数据、人工智能(artificial intelligence,AI)、5G网络、区块链等新一代信息技术的逐步成熟和广泛应用,信息化已…

【码云Git提交】Windows

一、第一次提交 1.登录码云创仓库 2.观察创建后的提示,就有步骤命令了 3.我们在系统中打开一个测试文件夹窗口打开GitBash PS:(你需要提前装一个Node,本章不介绍) 我们打开一个创建的test测试文件夹窗口,…

阿里 Modelscope 创空间部署在本地环境操作文档

创建创空间的步骤直接跳过。 备注:我的电脑是Windows 第一步:获取创空间代码,直接下载代码太慢了,建议通过git获取代码 第二步:复制链接,打开cmd 直接粘贴回车下载。下载完之后的到了我的Service-Assistant文件夹。再git clone https://gith…

可编程液冷负载的核心功能

可编程液冷负载核心功能在于根据设备的工作状态和环境温度,自动调整冷却液的流量和温度,以实现精确的散热控制。这种技术以其高效、智能的特性,为多个领域提供了全新的散热解决方案。 可编程液冷负载的核心功能在于其可编程性,这意…

【倪琴仲尼式-雷伴】全新倪诗韵精品杉木古琴

试音中的用弦:梦音,视频录音无任何处理,所见即所得。 现琴比照片更好看。倪琴吊牌、琴额后面的编码和倪琴官网上的序列号是一一对应的,可查。 雷伴,“伴”字取意陪伴、相伴、依随。栗壳色,纯鹿角霜生漆工艺…

解决“ModuleNotFoundError: No module named ‘transformers’”错误的全面指南

一、问题背景与原因 在Python编程中,ModuleNotFoundError是一个常见的错误,表明解释器无法在指定的路径或Python环境中找到所需的模块。特别是当我们尝试导入像transformers这样的第三方库时,如果库没有被正确安装,就会遇到这样的…

稀碎从零算法笔记Day28-LeetCode:零钱兑换

前言:鸽了好多天了哈哈哈,虽然C站没更但是LC还是坚持刷的,任重道远啊!(可恶的寝室熄灯) 题型:动态规划 链接:322. 零钱兑换 - 力扣(LeetCode) 来源:LeetCode 题目描述…

紫鸾5.0:紫光云新一代敏捷应用开发平台全家桶

曾几何时,“瀑布式”占据了二十世纪软件开发的主流,开发时间往往以年计,一款软件应用动辄几年才能交付。而随着社会生产力的跃升,“瀑布式”已严重跟不上时代的节奏,2001年,“敏捷宣言”的发布,…

微信小程序使用Vant组件库流程

目前 Vant 官方提供了 Vue 2 版本、Vue 3 版本和微信小程序版本,并由社区团队维护 React 版本和支付宝小程序版本。这样开发原生微信小程序的会方便很多。 官方网址:Vant Weapp - 轻量、可靠的小程序 UI 组件库 步骤一 通过 npm 安装 npm i vant/weap…

Matplotlib库的初步理解与使用

matplotlib库的设计哲学: Matplotlib is a comprehensive library for creating static, animated, and interactive visualizations in Python. Matplotlib makes easy things easy and hard things possible. matplotlib是一个用来创建静态,动画&#…

蓝牙信标覆盖范围

蓝牙信标覆盖范围是一个重要的考虑因素,对于蓝牙技术的应用和部署至关重要。了解蓝牙信标的覆盖范围可以帮助我们更好地规划蓝牙设备的布局和位置,从而实现最佳的信号覆盖和传输效果。 首先,我们需要明确蓝牙信标的覆盖范围受到多种因素的影…

10 天 996 写出的语言 - JavaScript

本文转自 公众号 ByteByteGo,如有侵权,请联系,立即删除 10 天 996 写出的语言 - JavaScript 在 JavaScript 之前,网页主要是静态的,任何交互性都必须在服务器端处理,导致用户体验笨拙和缓慢。JavaScript 的…

C语言与sqlite3入门

c语言与sqlite3入门 1 sqlite3数据类型2 sqlite3指令3 sqlite3的sql语法3.1 创建表create3.2 删除表drop3.3 插入数据insert into3.4 查询select from3.5 where子句3.6 修改数据update3.7 删除数据delete3.8 排序Order By3.9 分组GROUP BY3.10 约束 4 c语言执行sqlite34.1 下载…

Web UI 自动化测试方案(超级干货)看完不会你找我

项目讨论 一、项目中符合自动化测试的部分有哪些?(目标和范围 scope, 准入准出标准) 1、稳定的需求点、变动较少的页面 2、每日构建后的测试验证 daily build 3、比较频繁的回归测试 4、需要在多平台上运行的相同测试案例、组合遍历型的测试、大量的重…

what is apache?

Apache 通常指 Apache Software Foundation (ASF) 或 Apache HTTP Server,两者都是计算机软件领域的重要实体。 Apache 软件基金会 (ASF):Apache 软件基金会是一个开发开源软件项目的非营利组织。它为涵盖软件开发各个方面的广泛项目提供支持&#xff0c…

3dmax展厅异形模型怎么做---模大狮模型网

在3ds Max中创建展厅异形模型需要一定的建模技巧和创造力。以下是一般的步骤: 准备设计方案: 首先,需要明确展厅的设计方案和概念,包括展厅的整体结构、空间布局和异形特点等。 创建基本结构: 在3ds Max中&#xff…

MySQL数据库的备份-恢复-日志

一、备份: 1.数据备份的重要性: 备份的主要目的是灾难恢复。 在生产环境中,数据的安全性至关重要。 任何数据的丢失都可能产生严重的后果。 2.造成数据丢失的原因: 程序错误人为操作错误运算错误磁盘故障灾难(如…

30岁失业的我,选择职场转型,进入AIGC工程师领域,重新开始

去年,刚满30岁的我又一次被公司辞退了,由于学历不高,简历也不出彩,尽管半个月来投了一份又一份的简历,但仍然是石沉大海,我终于不得不开始思考一个以前被我一直刻意压制的想法——职场转型。 尽管知道这条…