从0到1:Python数据分析


《从0到1:Python数据分析》读书摘要

《从0到1:Python数据分析》由莫振杰著,中国工信出版集团和人民邮电出版社出版,是一本适合初学者的Python数据分析入门书籍,以NumPy、Pandas、Matplotlib为核心,系统讲解相关知识与技能。

主要内容:

• 数据分析基础与环境搭建:开篇介绍数据分析的概念、数据科学的范畴以及学习重点,还包括课程介绍和使用VSCode进行开发环境的搭建,如安装VSCode、插件以及运行代码等,为后续学习做好准备。

• NumPy篇:深入讲解NumPy,涵盖NumPy是什么、创建数组(基本方法、随机数组等)、数组属性、元素操作(访问、修改、添加、删除、切片等)、数组操作(修改形状、维度、翻转、去重、合并、分割等)、各种运算(基础、比较、标量、数学函数等)、遍历数组、大小排序等内容,让读者掌握NumPy的核心功能和操作,为数据处理打下基础。

• Pandas篇:详细介绍Pandas,包括Pandas是什么、Series和DataFrame的创建、属性、数据操作(访问、修改、添加、删除等)、遍历行列、深入了解等内容,还涉及数据的获取(读写JSON、CSV、Excel、HTML、数据库等)、筛选数据(获取行列、重新索引、获取首尾数据、随机抽样、逻辑比较、过滤操作、模式匹配等)、处理数据(操作行名和列名、类型转换、行列转置、大小排序、数据排名、替换、移动、清洗、合并等)、分析数据(基本统计函数、其他统计函数、数据分组、聚合函数等),使读者能够熟练运用Pandas进行数据处理和分析。

• Matplotlib篇:重点讲解Matplotlib,从基础图表(折线图、散点图、柱状图、直方图等)的绘制,包括基本语法、定义样式、通用设置(画布样式、标题、图例、刻度标签、范围、网格线、参考线、区域等),到高级图表(箱线图、饼状图、面积图、高级图表简介、箱线图、面积图、子图表等)的制作,以及实战题(如绘制气温折线图、浏览份额占市场份额柱形图、使用箱线图查找异常值、绘制每月销量的棉棒图等),帮助读者将数据可视化,更好地理解和展示数据。

• 工具篇:介绍了Jupyter Notebook,包括其简介、使用(安装Anaconda、运行Jupyter Notebook等)、应用场景、常用技巧(问号查询、输出多个变量、读取文件等),为读者提供了便捷的数据分析工具和技巧。

• 附录:提供了读写文件(Pandas)和统计函数(Pandas)的相关内容,作为参考资料,方便读者查阅和使用。

详细目录:

• 第一部分 NumPy篇

• 第1章 数据分析概述

• 1.1 数据分析简介

• 1.1.1 数据科学是什么?

• 1.1.2 数据分析是什么?

• 1.1.3 应该学些什么?

• 1.2 课程介绍

• 1.2.1 课程说明

• 1.2.2 常见问题

• 1.3 使用VSCode

• 1.3.1 安装VSCode

• 1.3.2 安装插件

• 1.3.3 运行代码

• 第2章 NumPy基础

• 2.1 NumPy是什么?

• 2.2 创建数组

• 2.2.1 基本方法

• 2.2.2 随机数组

• 2.2.3 数组与列表的区别

• 2.3 数组属性

• 2.4 元素操作

• 2.4.1 访问元素

• 2.4.2 修改元素

• 2.4.3 添加元素

• 2.4.4 删除元素

• 2.4.5 切片

• 2.5 数组操作

• 2.5.1 修改形状

• 2.5.2 修改维度

• 2.5.3 翻转数组

• 2.5.4 数组去重

• 2.5.5 合并数组

• 2.5.6 分割数组

• 2.6 各种运算

• 2.6.1 基本运算

• 2.6.2 比较运算

• 2.6.3 标量运算

• 2.6.4 数学函数

• 2.6.5 统计函数

• 2.7 遍历数组

• 2.8 大小排序

• 2.9 本章练习

• 第3章 NumPy进阶

• 3.1 浅拷贝和深拷贝

• 3.1.1 浅拷贝

• 3.1.2 深拷贝

• 3.2 axis的值

• 3.3 广播机制

• 3.3.1 维数不同

• 3.3.2 维数相同

• 3.4 读写文件

• 3.4.1 读取文件

• 3.4.2 写入文件

• 3.5 矩阵简介

• 3.5.1 全0矩阵

• 3.5.2 全1矩阵

• 3.5.3 单位矩阵

• 3.5.4 随机矩阵

• 3.6 本章练习

• 第二部分 Pandas篇

• 第4章 Pandas简介

• 4.1 Pandas是什么?

• 4.2 Series

• 4.2.1 创建Series

• 4.2.2 Series的属性

• 4.2.3 获取某行的值

• 4.2.4 深入了解

• 4.3 DataFrame

• 4.3.1 创建DataFrame

• 4.3.2 DataFrame的属性

• 4.3.3 深入了解

• 4.4 DataFrame的数据操作

• 4.4.1 访问数据

• 4.4.2 修改数据

• 4.4.3 添加数据

• 4.4.4 删除数据

• 4.5 遍历行列

• 4.5.1 遍历行

• 4.5.2 遍历列

• 4.6 深入了解

• 4.7 本章练习

• 第5章 获取数据

• 5.1 数据分析流程

• 5.2 读写数据简介

• 5.3 读写JSON

• 5.3.1 JSON简介

• 5.3.2 读取JSON

• 5.3.3 写入JSON

• 5.4 读写CSV

• 5.4.1 CSV简介

• 5.4.2 读取CSV

• 5.4.3 写入CSV

• 5.5 读写Excel

• 5.5.1 Excel简介

• 5.5.2 读取Excel

• 5.5.3 写入Excel

• 5.6 读写HTML

• 5.7 深入文件读取

• 5.7.1 分块读取

• 5.7.2 只读取一部分

• 5.8 读取数据库

• 5.8.1 安装MySQL

• 5.8.2 安装Navicat for MySQL

• 5.8.3 读取MySQL

• 5.9 本章练习

• 第6章 筛选数据

• 6.1 筛选数据简介

• 6.2 获取行、列:loc[]、iloc[]和df[]

• 6.2.1 获取行

• 6.2.2 获取列

• 6.3 重新索引:reindex()

• 6.3.1 语法简介

• 6.3.2 深入了解

• 6.4 获取首尾数据:head()和tail()

• 6.5 随机抽样:sample()

• 6.6 逻辑比较

• 6.6.1 语法简介

• 6.6.2 深入了解

• 6.7 过滤操作

• 6.7.1 query()

• 6.7.2 filter()

• 6.8 模式匹配

• 6.9 本章练习

• 第7章 处理数据

• 7.1 处理数据简介

• 7.2 操作行名和列名

• 7.2.1 设置某一列为行名

• 7.2.2 重置行名

• 7.2.3 修改行名和列名

• 7.3 类型转换

• 7.3.1 针对DataFrame

• 7.3.2 针对某一列

• 7.4 行列转置:T

• 7.5 大小排序:sort_values()

• 7.6 数据排名:rank()

• 7.7 数据替换:replace()

• 7.8 数据移动:shift()

• 7.9 数据清洗

• 7.9.1 缺失值

• 7.9.2 重复值

• 7.9.3 异常值

• 7.10 数据合并

• 7.10.1 轴向合并:concat()

• 7.10.2 主键合并:merge()

• 7.10.3 行列连接:join()

• 7.10.4 纵向合并:append()

• 7.11 字符串处理

• 7.11.1 获取长度:len()

• 7.11.2 统计次数:count()

• 7.11.3 去除空格:strip()

• 7.11.4 替换字符串:replace()

• 7.11.5 分割字符串:split()

• 7.11.6 重复字符串:repeat()

• 7.11.7 连接列:cat()

• 7.11.8 大小写转换

• 7.11.9 判断类型

• 7.11.10 判断包含

• 7.12 自定义函数

• 7.12.1 map()

• 7.12.2 apply()

• 7.12.3 applymap()

• 7.13 实战题:处理天气数据

• 7.14 实战题:拆分数据

• 7.15 本章练习

• 第8章 分析数据

• 8.1 分析数据简介

• 8.2 基本统计函数

• 8.2.1 求和:sum()

• 8.2.2 统计个数:count()

• 8.2.3 求最值:max()与min()

• 8.2.4 求中位数:median()

• 8.2.5 求众数:mode()

• 8.2.6 求平均数:mean()

• 8.2.7 求方差:var()

• 8.2.8 求标准差:std()

• 8.2.9 求分位数:quantile()

• 8.3 其他统计函数

• 8.3.1 统计取值种类

• 8.3.2 统计取值个数

• 8.3.3 求变化百分比

• 8.3.4 求最值的行名

• 8.4 整体情况

• 8.4.1 describe()

• 8.4.2 info()

• 8.5 聚合函数:agg()

• 8.6 数据分组

• 8.6.1 基本语法

• 8.6.2 统计分析

• 8.7 实战题:求平均寿命

• 8.8 本章练习

• 第三部分 Matplotlib篇

• 第12章 基础图表

• 12.1 Matplotlib简介

• 12.2 基本绘图(折线图)

• 12.2.1 基本语法

• 12.2.2 定义样式

• 12.3 通用设置

• 12.3.1 画布样式

• 12.3.2 定义标题

• 12.3.3 定义图例

• 12.3.4 刻度标签

• 12.3.5 刻度范围

• 12.3.6 网格线

• 12.3.7 参考线

• 12.3.8 参考区域

• 12.3.9 注释文本(有指向)

• 12.3.10 注释文本(无指向)

• 12.4 通用样式

• 12.5 散点图

• 12.5.1 基本语法

• 12.5.2 定义样式

• 12.5.3 气泡图

• 12.6 柱形图

• 12.6.1 基本语法

• 12.6.2 高级柱形图

• 12.6.3 条形图

• 12.7 直方图

• 12.7.1 基本语法

• 12.7.2 定义样式

• 12.8 饼状图

• 12.8.1 基本语法

• 12.8.2 定义样式

• 12.8.3 圆环图

• 12.9 实战题:绘制气温折线图

• 12.10 实战题:浏览熊所占市场份额柱形图

• 第13章 高级图表

• 13.1 高级图表简介

• 13.2 箱线图

• 13.2.1 基本语法

• 13.2.2 样式定义

• 13.3 面积图

• 13.3.1 基本语法

• 13.3.2 高级面积图

• 13.4 棉棒图

• 13.4.1 基本语法

• 13.4.2 定义样式

• 13.5 热力图

• 13.5.1 基本语法

• 13.5.2 定义样式

• 13.6 子图表

• 13.6.1 基本语法

• 13.6.2 实际案例

• 13.7 实战题:使用箱线图查找异常值

• 13.8 实战题:绘制每月销量的棉棒图

• 第四部分 工具篇

• 第14章 Jupyter Notebook

• 14.1 Jupyter Notebook简介

• 14.2 Jupyter Notebook的使用

• 14.2.1 安装Anaconda

• 14.2.2 运行Jupyter Notebook

• 14.3 应用场景

• 14.4 常用技巧

• 14.4.1 问号查询

• 14.4.2 输出多个变量

• 14.4.3 读取文件

• 第五部分 附录

• 附录A 读写文件(Pandas)

• 附录B 统计函数(Pandas)

• 附录C 绘图函数(Matplotlib)

本书结构清晰,内容丰富,从基础概念到实际操作,逐步引导读者掌握Python数据分析的技能,通过丰富的示例和练习,帮助读者巩固所学知识,适合想要系统学习Python数据分析的初学者。