提交 66247fe8 编写于 作者: W wizardforcel

2020-07-14 16:36:24

上级 fe96d376
......@@ -82,7 +82,7 @@ Anaconda 随附 Jupyter 笔记本。 Jupyter 笔记本允许纯文本与代码
![](img/2565c2e6-345d-4b1e-a1c2-7d3f5c795ea6.png)
我们也可以导入库。 例如,我们可以从 Matplotlib 导入模块。 在这种情况下,为了使 Matplotlib 在 Jupyter Notebook 中交互工作,我们将需要使用魔术函数,该魔术函数以%开头,魔术函数的名称以及需要传递给的任何类型的参数。 它。 稍后,我们将在详细信息中介绍这些内容,但首先让我们运行该单元格。`plt`现在已经加载,现在我们可以使用它了。 例如,在最后一个单元格中,我们将输入以下代码:
我们也可以导入库。 例如,我们可以从 Matplotlib 导入模块。 在这种情况下,为了使 Matplotlib 在 Jupyter Notebook 中交互工作,我们将需要使用魔术函数,该魔术函数以%开头,魔术函数的名称以及需要传递给的任何类型的参数。 它。 稍后,我们将在详细信息中介绍这些内容,但首先让我们运行该单元格。`plt`现在已经加载,现在我们可以使用它了。 例如,在最后一个单元格中,我们将输入以下代码:
![](img/cd197191-9798-46d6-9448-bed5424046a6.png)
......@@ -362,7 +362,7 @@ conda remove selenium
* 为 Python 安装 MySQL 连接器
* 创建,使用和删除数据库
为了使 MySQL 和 Python 一起使用,MySQL 连接器是必需的。 存在许多 SQL 数据库实现,尽管 MySQL 可能不是最简单的数据库管理系统,但它功能齐全,具有工业实力,在现实世界中很常见,而且它是免费开放的 来源,这意味着它是一个很好的学习工具。 您可以从 [MySQL 的网站](https://dev.mysql.com/downloads/)上获取 MySQL Community Edition,它是免费和开源的版本。
为了使 MySQL 和 Python 一起使用,MySQL 连接器是必需的。 存在许多 SQL 数据库实现,尽管 MySQL 可能不是最简单的数据库管理系统,但它功能齐全,具有工业实力,在现实世界中很常见,而且它是免费和开源的,这意味着它是一个很好的学习工具。 您可以从 [MySQL 的网站](https://dev.mysql.com/downloads/)上获取 MySQL Community Edition,它是免费和开源的版本。
# 安装 MySQL
......
......@@ -76,9 +76,9 @@
![](img/4aafb70e-7107-4da8-a8af-083282dd191a.png)
毫不奇怪,`inf`不是有限的。`-inf`都不是。 但是`nan`既不是 也不是 有限或无穷大; 它是未定义的。 让我们看看执行`inf + 1``inf * -1``nan + 1`时会发生什么。 我们总是得到`nan`
毫不奇怪,`inf`不是有限的。`-inf`都不是。 但是`nan`既不是有限的也不是无穷大; 它是未定义的。 让我们看看执行`inf + 1``inf * -1``nan + 1`时会发生什么。 我们总是得到`nan`
如果我们将 2 增大到负无穷大的幂,则得到的是 0。但是,如果将其提高到无穷大,我们将得到无穷大。`inf - inf`等于而不是 等于任何特定数字:
如果我们将 2 增大到负无穷大的幂,则得到的是 0。但是,如果将其提高到无穷大,我们将得到无穷大。`inf - inf`等于`NaN`而不是任何特定数字:
![](img/de302823-d282-46b1-81d2-a1655f52a956.png)
......
......@@ -104,7 +104,7 @@ Wayne 不包括在选择中,这是为执行该索引而生成的数组:
![](img/8fad7f33-bca1-4121-8837-9e70331b95a0.png)
第一个数组中的第一个 0 表示第一个坐标为零,第二个数组中的第一个 0 表示第二个坐标为零,这由这两个数组列出的顺序指定。因此,在第一行和第一列 所得数组的元素为`[0, 0]`。 在第一行和第二列中,我们有原始数组中的元素`[0, 2]`。 然后,在第二行和第一列中,我们具有原始数组的第三行和第一列中的元素。 注意,这是`Wayne`
第一个数组中的第一个 0 表示第一个坐标为零,第二个数组中的第一个 0 表示第二个坐标为零,这由这两个数组列出的顺序指定。因此,所得数组的第一行和第一列的元素为`[0, 0]`。 在第一行和第二列中,我们有原始数组中的元素`[0, 2]`。 然后,在第二行和第一列中,我们具有原始数组的第三行和第一列中的元素。 注意,这是`Wayne`
然后,我们有了原始数组的第三行和第三列中的元素,该元素对应于`Joey`
......@@ -218,7 +218,7 @@ NumPy 数组的算术总是按组件进行的。 这意味着,如果我们有
其中一些是`ndarray`方法,其他则在您需要导入的`linalg`模块中。 因此,我们实际上已经在较早的示例中演示了转置。 注意,我们在这里使用转置来在行和列之间交换。
这是`arr4`中的 换位
这是`arr4`中的转置
![](img/f7a9f0cd-719f-4d06-bdda-0b7dc921a6e2.png)
......@@ -250,7 +250,7 @@ NumPy 数组的算术总是按组件进行的。 这意味着,如果我们有
![](img/280c0309-eb08-4c7f-a163-d90d2c923790.png)
我还想创建一个仅包含 虹膜副本最后一列的新数组,并创建另一个包含其余列和一列的数组 的 1 秒
我还想创建一个仅包含鸢尾花副本最后一列的新数组,并创建另一个包含其余列和全为 1 的列的数组
现在,我们将创建一个与矩阵乘积相对应的新数组。 所以我说 X 平方是 X 转置并乘以 X,这就是结果数组:
......
......@@ -6,7 +6,7 @@
pandas 向 Python 引入了两个关键对象,序列和数据帧,后者可能是最有用的,但是 pandas DataFrames 可以认为是绑定在一起的系列。 系列是一系列数据,例如基本 Python 中的列表或一维 NumPy 数组。 而且,与 NumPy 数组一样,序列具有单个数据类型,但是用序列进行索引是不同的。 使用 NumPy 时,对行和列索引的控制不多; 但是对于一个系列,该系列中的每个元素都必须具有唯一的索引,名称,键,但是您需要考虑一下。 该索引可以由字符串组成,例如一个国家中的城市,而序列中的相应元素表示一些统计值,例如城市人口; 或日期,例如股票系列的交易日。
可以将数据帧视为具有公共索引的多个系列的公共长度,它们在单个表格对象中绑定在一起。 该对象类似于 NumPy 2D `ndarray`,但不是同一件事。 并非所有列都必须具有相同的数据类型。 回到城市示例,我们可以有一个包含人口的列,另一个包含该城市所在州或省的信息,还有一个包含布尔值的列,用于标识城市是州还是省的首都,这是一个棘手的壮举 仅使用 NumPy 即可完成。 这些列中的每一个可能都有一个唯一的名称,一个字符串来标识它们包含的信息。 也许可以将其视为变量。 有了这个对象,我们可以轻松,有效地存储,访问和操纵我们的数据。
可以将数据帧视为具有公共索引的多个系列的公共长度,它们在单个表格对象中绑定在一起。 该对象类似于 NumPy 2D `ndarray`,但不是同一件事。 并非所有列都必须具有相同的数据类型。 回到城市示例,我们可以有一个包含人口的列,另一个包含该城市所在州或省的信息,还有一个包含布尔值的列,用于标识城市是州还是省的首都,仅使用 NumPy 来完成是一个棘手的壮举。 这些列中的每一个可能都有一个唯一的名称,一个字符串来标识它们包含的信息。 也许可以将其视为变量。 有了这个对象,我们可以轻松,有效地存储,访问和操纵我们的数据。
在下面的笔记本中,我们将预览可以使用序列和数据帧进行的操作:
......
......@@ -10,7 +10,7 @@
![](img/1aeacb3c-603c-4ed2-9c3c-fa28e1475e16.png)
`srs1`的索引从 0 到 4,而`srs2`的索引从 0 到 3,先跳过 4,然后再到 5。从技术上讲,这两个序列的长度是相同的,但是长度并不相同 必然意味着这些元素将按照您的预期进行匹配。 例如,让我们考虑以下代码。 当我们添加`srs1``srs2`时会发生什么?
`srs1`的索引从 0 到 4,而`srs2`的索引从 0 到 3,先跳过 4,然后再到 5。从技术上讲,这两个序列的长度是相同的,但是并不意味着这些元素将按照您的预期进行匹配。 例如,让我们考虑以下代码。 当我们添加`srs1``srs2`时会发生什么?
![](img/df0aba8d-49b9-405b-9348-dd6e2c3bbc92.png)
......@@ -176,7 +176,7 @@ DataFrame 之间的算术与序列或 NumPy 数组算术具有某些相似之处
# 删除缺失的信息
系列和数据帧的`dropna`可用于创建对象的副本,其中删除了丢失的信息行。 默认情况下,它将删除缺少任何数据的行,并且与系列一起使用时,它将使用 NaN 消除元素。 如果要适当完成此操作,请将`inplace`参数 设置为`true`
系列和数据帧的`dropna`可用于创建对象的副本,其中删除了丢失的信息行。 默认情况下,它将删除缺少任何数据的行,并且与系列一起使用时,它将使用 NaN 消除元素。 如果要适当完成此操作,请将`inplace`参数设置为`true`
如果我们只想删除仅包含缺少信息的行,因此不删除任何使用信息,则可以将 how 参数设置为全部。 默认情况下,此方法适用于行,但如果要更改其适用于列,则可以将 access 参数设置为 1。
......
......@@ -122,7 +122,7 @@
# 绘图方法
关键的 pandas 对象,系列和数据帧提供了一种绘图方法,简称为 plot。 它可以轻松地创建 图表,例如折线图,散点图,条形图或所谓的核密度估计图(用于了解数据的形状) , 等等。 可以创建许多图。 我们可以通过将`plot`中的 kind 参数设置为字符串来控制所需的绘图,以指示所需的绘图。 通常,这会产生一些带有通常选择的默认参数的图。 通过在 plot 方法中指定其他参数,我们可以更好地控制最终输出,然后将这些参数传递给 Matplotlib。 因此,我们可以控制诸如标签,绘图样式,*x* 限制,*y* 限制,不透明度和其他详细信息之类的问题。
关键的 pandas 对象,系列和数据帧提供了一种绘图方法,简称为 plot。 它可以轻松地创建图表,例如折线图,散点图,条形图或所谓的核密度估计图(用于了解数据的形状) , 等等。 可以创建许多图。 我们可以通过将`plot`中的 kind 参数设置为字符串来控制所需的绘图,以指示所需的绘图。 通常,这会产生一些带有通常选择的默认参数的图。 通过在 plot 方法中指定其他参数,我们可以更好地控制最终输出,然后将这些参数传递给 Matplotlib。 因此,我们可以控制诸如标签,绘图样式,*x* 限制,*y* 限制,不透明度和其他详细信息之类的问题。
存在用于创建不同图的其他方法。 例如,系列有一个称为 hist 的方法来创建直方图。
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册