【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维数组的计算。

相关推荐
SelectDB技术团队5 小时前
Apache Doris 2025 Roadmap:构建 GenAI 时代实时高效统一的数据底座
大数据·数据库·数据仓库·人工智能·ai·数据分析·湖仓一体
Loving_enjoy6 小时前
基于Hadoop的明星社交媒体影响力数据挖掘平台:设计与实现
大数据·hadoop·数据挖掘
千鼎数字孪生-可视化8 小时前
3D模型给可视化大屏带来了哪些创新,都涉及到哪些技术栈。
ui·3d·信息可视化·数据分析
Python之栈9 小时前
PandasAI:当数据分析遇上自然语言处理
人工智能·python·数据分析·pandas
Start_Present17 小时前
Pytorch 第十二回:循环神经网络——LSTM模型
pytorch·rnn·神经网络·数据分析·lstm
DREAM.ZL18 小时前
基于python的电影数据分析及可视化系统
开发语言·python·数据分析
代码骑士20 小时前
聚类(Clustering)基础知识2
机器学习·数据挖掘·聚类
大美B端工场-B端系统美颜师20 小时前
静态图表 VS 动态可视化,哪种更适合数据故事讲述?
信息可视化·数据挖掘·数据分析
青云交1 天前
Java 大视界 -- Java 大数据在智能电网电力市场交易数据分析与策略制定中的关键作用(162)
java·大数据·数据分析·交易策略·智能电网·java 大数据·电力市场交易
葡萄成熟时_1 天前
【第十三届“泰迪杯”数据挖掘挑战赛】【2025泰迪杯】【代码篇】A题解题全流程(持续更新)
人工智能·数据挖掘