【2】数据分析基础(关于Numpy 的基础 1)

NumPy

NumPy是什么?
NumPy(Numerical Python的缩写)是一个++开源++ 的Python科学计算模块,其中包含了许多实用的数学函数,用来处理++数值型数据++ 。

优点:

  1. 很多更高级的扩展模块都依赖于NumPy,比如++pandas++

  2. NumPy中有计算平均数、中位数等数学相关的内置函数,可以在代码中省去很多的循环语句,帮助我们更加快速和科学地进行计算

  3. NumPy提供了一个叫做N维数组的数据结构,它和Python中的列表list类似,但前者的输入输出性能远优于后者

学习目标1
要想深入了解NumPy,我们就必须先从它的核心 ------ N维数组(ndarray)开始学习。
同时NumPy中,N维数组(ndarray)作为最重要和使用最频繁的对象。
接下来,我们将分别学习以下几个方面:

  1. N维数组的基本概念和常用属性
    2.创建一个N维数组
  2. N维数组的运算

|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| N维数组 |
| 定义 顾名思义,++N++ ++维数组(ndarray)++ 是一个多维数组,描述了相同类型数据的集合。 隐喻 如图所示,各个科目的分数形成了一个++4x3++ 的二维数组,该数组就是一个同一数据类型 ------ 分数(整型int)的集合。 |

|-----------------------------------------------------------------------------------------------|----------------------------------------------------------------------------|
| 有很多属性可以描述N维数组,最常用的两个属性分别是数据类型和维度。 比如,上一页中,我们用了「整型(int)」和「二维」来描述示例中的数组,依次对应的就是数组的数据类型和维度这两个属性。 | |

|----------------------------------------------------------------|---------------------------------------------------------------------------------------------------------|
| NumPy数组的 数据类型 指的是数组中存储的元素类型,可以是:整型(int)、浮点型(float)、布尔型(bool)等。 | 需要注意的是,NumPy数组中的所有元素类型必须是一致的。 |

Ps:

一维空间相当于一根直线。在这样的空间里,只能前进或者后退,所以只有长度的概念。
二维空间其实就是一个平面。在这个平面上,除了前进、后退以外,还可以向左或者向右,所以有长度和宽度的概念。
三维空间就像是一个立方体。在这个空间里,除了前进、后退、向左和向右移动外,还可以向上或者向下,所以有长度、宽度和高度的概念。

|---------------------------------------------------------------------|----------------------------------------------------------------------------|
| NumPy数组的维度和我们平常说的维度非常相似,接触最多的通常是一维(1D)和二维(2D)数组,可以通过中括号[ ]的层数来确定。 | |

|------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------|
| [...]表示一维数组,和Python中的列表长得很像。 在使用print()输出时,它们的区别在于数组之间的元素是用空格分隔,而列表是以逗号分隔。 一维数组的所有元素都在同一「行」里,一行中可以有很多元素。 | |

|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------|
| [[...]]表示二维数组。 二维数组中的每个元素都是一个一维数组,并且每一行的元素数量都是一致的。在二维数组中: 行数代表二维数组中一维数组的数量; 列数代表一维数组中元素的数量。 | |

以此类推,[[[...]]]表示三维数组,三维数组中的每个元素都是一个二维数组;[[[[...]]]]表示四维数组,四维数组中的每个元素都是一个三维数组...

Like:

有很多属性可以描述N维数组,最常用的两个属性分别是数据类型和维度。

在了解完N维数组的概念和常用属性后,我们来学习如何创建N维数组。在使用NumPy创建N维数组前,我们需要先安装numpy。

导入与安装numpy

|----------------------------------------------------------------------------------------|------------------------------------------------------|
| 安装完后,下一步就是导入numpy。 根据NumPy官方文档的倡导,在导入numpy时通常会使用「np」作为numpy的简写,方便以后调用。 导入numpy的具体代码如下: | # 使用import导入numpy,并使用"np"作为该模块的简写 import numpy as np |

在终端输入pip install numpy安装模块。
在代码中使用import numpy as np导入模块。

如图所示:

创建n维数组

在导入numpy后,我们就可以开始创建N维数组啦~
创建N维数组的方式有很多,最简单的一种方式就是调用NumPy模块中的array()函数。

|---------------------------------------------------------------------------------------------|----------------------------------------------------------------------------|
| 任意序列型对象,也就是列表、元组、数组等数据结构,都可以作为参数传入。 该函数会返回传入的参数所对应的数组。 接下来,通过依次分析如何创建一维数组和二维数组,来更好的理解这个函数吧。 | |

|-------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 创建N维数组 np.array() 这三行代码创建了一个叫做"arr"的一维数组,并输出了该数组。 第一行导入了numpy,并使用"np"作为该模块的简写。 第二行将一个元素全是整型的列表作参数传入到np.array()中,并将函数返回的结果赋值给了变量arr。 | 第三行输出了该数组,也就是[1 2 3 4 5]。 |

|-----------------------------------------------------------------|
| 函数np.array() np.array()是NumPy中用来创建N维数组的函数。 |
| import numpy as np arr = np.array([1, 2, 3, 4, 5]) print(arr) |
| [1 2 3 4 5] |

|-----------------------------------------------------------------------------|
| 一个列表 作为参数传入np.array()函数中,该函数将返回一个对应的数组。 任意序列型对象,也就是列表、元组、数组等数据结构,都可以作为参数传入。 |
| import numpy as np arr = np.array([1, 2, 3, 4, 5]) print(arr) |
| [1 2 3 4 5] |

|----------------------------------------------------------------------------|
| 变量名 函数返回的一维数组赋值给了变量arr。 |
| |
| [1 2 3 4 5] |

再加一个例子:

在学习了N维数组的概念、常用属性以及如何创建一个N维数组后,我们来继续学习N维数组的计算。

相关推荐
拓端研究室TRL1 小时前
PySpark、Plotly全球重大地震数据挖掘交互式分析及动态可视化研究
人工智能·plotly·数据挖掘
思通数科多模态大模型3 小时前
重构城市应急指挥布控策略 ——无人机智能视频监控的破局之道
人工智能·深度学习·安全·重构·数据挖掘·音视频·无人机
十三画者3 小时前
【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习
python·机器学习·数据挖掘·数据分析·r语言·数据可视化
Mikhail_G14 小时前
Python应用函数调用(二)
大数据·运维·开发语言·python·数据分析
自由鬼15 小时前
数据分析图表类型及其应用场景
信息可视化·数据挖掘·数据分析
反向跟单策略16 小时前
期货反向跟单运营逻辑推导思路
大数据·人工智能·数据分析·区块链
害羞的白菜19 小时前
基于Axure+墨刀设计的电梯管理系统云台ERP的中保真原型图
数据分析·产品经理·axure·项目经理·墨刀
deephub20 小时前
让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比
人工智能·机器学习·数据挖掘·回归·异常值
Leo.yuan20 小时前
实时数据仓库是什么?数据仓库设计怎么做?
大数据·数据库·数据仓库·数据分析·spark
仟濹21 小时前
「数据分析 - Pandas 函数」【数据分析全栈攻略:爬虫+处理+可视化+报告】
爬虫·数据分析·pandas