【AI】数据分析-数据可视化模块
创始人
2025-05-28 14:01:44
0

NumPy(Numerical Python) 是科学计算基础库,提供大量科学计算相关功能,比如数据统计,随机数生成等。其提供最核心类型为多维数组类型(ndarray),支持大量的维度数组与矩阵运算,Numpy 支持向量处理 ndarray 对象,提高程序运算速度。

那么Numpy到底有什么功能呢?其实Numpy的功能非常多,主要用于数组计算。Numpy可以让用户在 Python 语言中使用向量和数学矩阵。Numpy 是 Python 语言在科学计算领域取得成功的关键之一,如果想通过 Python 语言学习数据科学、人工智能(包括深度学习、语言处理等分支),就必须学习 Numpy。
通过阅读本文章,你可以:

  • 了解什么是 Numpy

  • 掌握如何使 Numpy 操作数组,如创建数组、改变数组的维度、拼接和分隔数组等

  • 掌握 Numpy 的常用函数,如数组存取函数、加权平均数函数、最大值和最小值函数等

1.1 Numpy 开发环境搭建

Numpy 是第三方程序库,所以在使用 Numpy 之前必须安装 Numpy。如果使用的是 Anaconda Python 开发环境,那么 Numpy 已经集成到Anaconda 环境中了,不需要再安装。如果使用的是官方开发环境,可以使用 pip 命令安装Numpy,语法格式如下:

pip install numpy

【示例1】 测试 numpy 模块安装是否成功

import numpy as np
a=np.arange(10)
print(a)

执行结果如图
在这里插入图片描述

在上面的程序中只涉及 numpy 模块中的一个 arange 函数,该函数可以传入一个整数类型的参数 n,函数返回值看着像一个列表,其实返回值类型是numpy.ndarray。这是 Numpy中特有的数组类型。如果传入 arange 函数的参数值是 n,那么 arange 函数会返回 0 到 n-1 的ndarray 类型的数组。

1.2 数组的创建

1.2.1 array 创建

numpy 模块的 array 函数可以生成多维数组。例如,如果要生成一个二维数组,需要向 array 函数传递一个列表类型的参数。每一个列表元素是一维的 ndarray 类型数组,作为二维数组的行。另外,通过 ndarray 类的 shape 属性可以获得数组每一维的元素个数(元组形式),也可以通过 shape[n]形式获得每一维的元素个数,其中 n 是维度,从 0 开始。

语法格式如下:

numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)

表 1-1 array 参数说明
在这里插入图片描述


【示例2】 创建一维数组

b=np.array([1,2,3,4,5,6])
print(b)
print('b 数组的维度:',b.shape)

执行结果如图
在这里插入图片描述


【示例3】创建二维数组

a=np.array([[1,2,3],[4,5,6],[7,8,9]])
print(a)
print('a 数组的维度:',a.shape)

执行结果如图

在这里插入图片描述


【示例4】array()函数 ndmin 参数的使用

import numpy as np
a=np.array([1,2,3,4,5,6],ndmin=3)
print(a)

执行结果如图
在这里插入图片描述


【示例5】array()函数 dtype 参数的使用

a=np.array([1,2,3,4,5,6],dtype=complex)
print(a)

执行结果如图
在这里插入图片描述

1.2.2 arange 创建

使用 arange 函数创建数值范围并返回 ndarray对象,函数语法格式如下:

numpy.arange(start, stop, step, dtype)

下图是arange 参数说明
在这里插入图片描述


【示例6】arange()函数创建数组

import numpy as np
x=np.arange(0,6,dtype=int)
print(x)

执行结果如图
在这里插入图片描述


【示例 7】arange()函数指定起始值、终止值及步长
x=np.arange(10,20,2,dtype=float)
print(x)

执行结果如图
在这里插入图片描述


【示例8】arange()函数创建二维数组
b=np.array([np.arange(1,4),np.arange(4,7),np.arange(7,10)])
print(b)
print('b 数组的维度:',b.shape)

执行结果如图
在这里插入图片描述

1.2.3 随机数创建

numpy 中的 random 模块包含了很多方法可以用来产生随机数,对 random 中的一些常用方法如表所示:
在这里插入图片描述


【示例9】numpy.random.random(size=None)的使用

#numpy.random.random(size=None)
#返回[0.0, 1.0)范围的随机数
import numpy as np
print('生成一维(4,)的随机数组:')
x=np.random.random(size=4)
print(x)
print('生成二维(3,4)的随机数组:')
y=np.random.random(size=(3,4))
print(y)

执行结果如图

相关内容

热门资讯

linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
C++ 机房预约系统(六):学... 8、 学生模块 8.1 学生子菜单、登录和注销 实现步骤: 在Student.cpp的...
JAVA多线程知识整理 Java多线程基础 线程的创建和启动 继承Thread类来创建并启动 自定义Thread类的子类&#...
【洛谷 P1090】[NOIP... [NOIP2004 提高组] 合并果子 / [USACO06NOV] Fence Repair G ...
国民技术LPUART介绍 低功耗通用异步接收器(LPUART) 简介 低功耗通用异步收发器...
城乡供水一体化平台-助力乡村振... 城乡供水一体化管理系统建设方案 城乡供水一体化管理系统是运用云计算、大数据等信息化手段࿰...
程序的循环结构和random库...   第三个参数就是步长     引入文件时记得指明字符格式,否则读入不了 ...
中国版ChatGPT在哪些方面... 目录 一、中国巨大的市场需求 二、中国企业加速创新 三、中国的人工智能发展 四、企业愿景的推进 五、...
报名开启 | 共赴一场 Flu... 2023 年 1 月 25 日,Flutter Forward 大会在肯尼亚首都内罗毕...
汇编00-MASM 和 Vis... Qt源码解析 索引 汇编逆向--- MASM 和 Visual Studio入门 前提知识ÿ...
【简陋Web应用3】实现人脸比... 文章目录🍉 前情提要🌷 效果演示🥝 实现过程1. u...
前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
windows安装JDK步骤 一、 下载JDK安装包 下载地址:https://www.oracle.com/jav...
分治法实现合并排序(归并排序)... 🎊【数据结构与算法】专题正在持续更新中,各种数据结构的创建原理与运用✨...
在linux上安装配置node... 目录前言1,关于nodejs2,配置环境变量3,总结 前言...
Linux学习之端口、网络协议... 端口:设备与外界通讯交流的出口 网络协议:   网络协议是指计算机通信网...
Linux内核进程管理并发同步... 并发同步并发 是指在某一时间段内能够处理多个任务的能力,而 并行 是指同一时间能够处理...
opencv学习-HOG LO... 目录1. HOG(Histogram of Oriented Gradients,方向梯度直方图)1...
EEG微状态的功能意义 导读大脑的瞬时全局功能状态反映在其电场结构上。聚类分析方法一致地提取了四种头表面脑电场结构ÿ...
【Unity 手写PBR】Bu... 写在前面 前期积累: GAMES101作业7提高-实现微表面模型你需要了解的知识 【技...