NumPy#
+1. NumPy#
本节主要讲解如何使用 NumPy 进行高维数组计算。
diff --git a/_config.yml b/_config.yml index 3545848..4d8466a 100644 --- a/_config.yml +++ b/_config.yml @@ -33,3 +33,9 @@ only_build_toc_files: true html: use_issues_button: true use_repository_button: true + +sphinx: + config: + bibtex_reference_style: author_year # or label, super, \supercite + numfig_format: {'figure': '图 %s', 'table': '表 %s', + 'code-block': '代码片段 %s', 'section': '章节 %s'} diff --git a/_toc.yml b/_toc.yml index bfd1687..9b0df3f 100644 --- a/_toc.yml +++ b/_toc.yml @@ -5,6 +5,7 @@ format: jb-book root: index parts: - caption: 数据处理与计算 + numbered: 2 chapters: - file: ch-numpy/index sections: diff --git a/docs/ch-numpy/index.html b/docs/ch-numpy/index.html index d6032af..f7dd133 100644 --- a/docs/ch-numpy/index.html +++ b/docs/ch-numpy/index.html @@ -9,7 +9,7 @@ -
本节主要讲解如何使用 NumPy 进行高维数组计算。
next
-NumPy 简介
+1.1. NumPy 简介
索引(Index)从 ndarray
里定位所需要的数据,切片(Slice)从 ndarray
里选择一些数据。切片和索引都是在 ndarray
上选择所需要的数据。
无论是索引还是切片,都需要一个 Index 标号来定位从左往右或者从右往左第几个数据是我们想要的数据。从左往右时起始位置从 0 开始,即 Index = 0 是整个 ndarray
最左侧元素;从右往左索引时起始位置从 - 1 开始,即 Index = -1 表示最右侧元素。
previous
-ndarray
+1.2. ndarray
next
-随机数生成
+1.4. 随机数生成
NumPy 最核心的数据结构是多维数组(N-dimensional Array): ndarray
。 ndarray
是由同一数据类型的数据组成的数组列表。
previous
-NumPy 简介
+1.1. NumPy 简介
next
-切片与索引
+1.3. 切片与索引
Python 语言其实并不是为科学计算而设计的,到了 2000 年左右,Python 在科学计算领域变得越来越受欢迎,但缺乏一个高效的数组处理工具。Python 的列表(list)虽然灵活,但在处理大型数据集时性能不佳。
NumPy 并不是第一个 Python 科学计算库,它的前身有 Numeric、Numarray 等,并借鉴 Fortran、MATLAB、和 S 语言了优点。经过了一系列的演化发展,Travis Oliphant 在 2005 年创建了 NumPy 项目,并在 2006 年发布了 NumPy 1.0。NumPy 的目标是提供高性能的多维数组对象,以及用于数组操作的丰富函数库。NumPy 引入了 ndarray
这一核心数据结构。
自从 NumPy 项目创建以来,它已经成为 Python 科学计算生态系统中的核心组件。许多其他科学计算和数据分析库,如 SciPy、pandas 和 Matplotlib,都构建在 NumPy 之上。
@@ -441,7 +441,7 @@previous
-NumPy
+1. NumPy
next
-ndarray
+1.2. ndarray
numpy.random
模块用于生成随机数。
previous
-切片与索引
+1.3. 切片与索引
next
-pandas
+2. pandas
数据处理工作包括处理重复值、缺失值和异常值,生成新的列或者行等。
previous
-数据切片
+2.3. 数据切片
next
-分组汇总
+2.5. 分组汇总
实际的数据分析中,经常需要对某一类数据进行统计分析。比如,假如我们拥有全国所有人的身高和体重数据,我们想按照省份分组,统计每个省的平均身高和平均体重,这时候就需要使用分组操作。pandas 提供了 groupby
函数进行类似的分组汇总操作。Fig. 1 计算平均身高的分组汇总流程,主要包括两部分:分组与汇总。其中分组阶段将同一类的内容归结到相同的组中;汇总阶段将所关心的数据进行计算,比如求和、求平均等。
实际的数据分析中,经常需要对某一类数据进行统计分析。比如,假如我们拥有全国所有人的身高和体重数据,我们想按照省份分组,统计每个省的平均身高和平均体重,这时候就需要使用分组操作。pandas 提供了 groupby
函数进行类似的分组汇总操作。图 2.1 计算平均身高的分组汇总流程,主要包括两部分:分组与汇总。其中分组阶段将同一类的内容归结到相同的组中;汇总阶段将所关心的数据进行计算,比如求和、求平均等。
按哪些字段进行分组,这些字段又被成为 ** 分组变量 **。对其他字段进行汇总,其他汇总字段被成为 ** 汇总变量 **。对汇总变量进行计算,被称为 ** 汇总统计量 **。
previous
-数据处理
+2.4. 数据处理
next
-多表操作
+2.6. 多表操作
之前的操作主要在单个 DataFrame
,实际上,我们经常需要对多个 DataFrame
联合起来进行分析。pandas 提供了多 DataFrame
之间的合并和连接的操作,分别是 merge()
和 concat()
函数。比如,我们可以将两个 DataFrame
合并成一个,且保留所有的列。
pandas 的 merge
操作可以合并两个 DataFrame
(或者称为表) ,类似于 SQL 中的 JOIN 操作。 我们可以想象成:一个大表被拆分成两个小表,两个小表都包含一些同样的数据。现在我们需要把两个小表合并,生成一个大表,大表包含了两个小表的字段。
previous
-分组汇总
+2.5. 分组汇总
next
-数据透视
+2.7. 数据透视
pivot()
和 melt()
是一对互逆的操作,能提供类似 Excel 数据透视表这样的功能。
previous
-多表操作
+2.6. 多表操作
实际中,我们常常不是分析整个数据,而是数据中的部分子集。如何根据特定的条件获得所需要的数据是本节的主要内容。
previous
-Series 与 DataFrame
+2.2. Series 与 DataFrame
next
-数据处理
+2.4. 数据处理
本节主要讲解如何使用 pandas 进行表格数据处理。
previous
-随机数生成
+1.4. 随机数生成
next
-pandas 简介
+2.1. pandas 简介
pandas 库是一个流行的 Python 数据处理和分析库,它提供了名为 DataFrame
的数据结构,DataFrame
是一个二维表,有很多行和很多列,类似 Excel 表。基于 DataFrame
数据结构,pandas 提供了一系列数据处理和分析函数,是 Python 数据分析必备的库。pandas 的名字据说来自于 panel data (面板数据),面板数据是计量经济学领域的一个最广泛使用的数据结构。可见,pandas 设计之初主要为经济和金融数据分析服务。
previous
-pandas
+2. pandas
next
-Series 与 DataFrame
+2.2. Series 与 DataFrame
pandas 的核心数据结构有两个: Series 和 DataFrame。
previous
-pandas 简介
+2.1. pandas 简介
next
-数据切片
+2.3. 数据切片
next
-NumPy
+1. NumPy