【数据分析 | Numpy】Numpy模块系列指南(一),从设计架构说起

🤵‍♂️ 个人主页: @AI_magician

📡主页地址: 作者简介:CSDN内容合伙人,全栈领域优质创作者。

👨‍💻景愿:旨在于能和更多的热爱计算机的伙伴一起成长!!🐱‍🏍

🙋‍♂️声明:本人目前大学就读于大二,研究兴趣方向人工智能&硬件(虽然硬件还没开始玩,但一直很感兴趣!希望大佬带带)


【深度学习 | 核心概念】那些深度学习路上必经的核心概念,确定不来看看? (一) 作者: 计算机魔术师 版本: 1.0 ( 2023.8.27 )


摘要: 本系列旨在普及那些深度学习路上必经的核心概念,文章内容都是博主用心学习收集所写,欢迎大家三联支持!本系列会一直更新,核心概念系列会一直更新!欢迎大家订阅

该文章收录专栏

✨--- [《深入解析机器学习:从原理到应用的全面指南》](https://blog.csdn.net/weixin_66526635/category_12216068.html) ---✨

Numpy

Numpy 在数值运算上效率优于python内置的list, 所以熟练掌握是必要的。

Numpy主要分为两个核心部分,N维数组对象 Ndarry 和 通用函数对象 Ufunc, (一个数据结构,一个操作的算法)下面是关于NumPy库的各个常用模块

中文名称 英文名称 介绍 解决场景
数组对象 ndarray (N-dimensional array) 多维数组对象,用于存储同类型的元素,支持矢量化操作和广播运算。 数值计算、线性代数、统计分析等
通用函数 Universal Functions (ufunc) 快速的元素级数组函数,对数组中的元素逐个进行操作,支持矢量化运算。 数值计算、数学运算、逻辑运算等
索引和切片 Indexing and Slicing 用于访问和修改数组中的元素,可以通过索引、切片和布尔掩码进行操作。 数据访问、数据修改、数据筛选等
广播 Broadcasting 对不同形状的数组进行自动的元素级运算,使得不同尺寸的数组可以进行计算。 处理形状不同的数组、矩阵运算等
线性代数 Linear Algebra 提供了线性代数运算的函数,如矩阵乘法、特征值分解、奇异值分解等。 线性代数计算、矩阵运算等
随机数 Random Sampling (random) 生成各种概率分布的随机数,包括均匀分布、正态分布、泊松分布等。 模拟实验、概率分析、随机抽样等
快速傅里叶变换 Fast Fourier Transform (fft) 提供了快速傅里叶变换算法,用于信号处理、图像处理和频谱分析等。 信号处理、频谱分析、图像处理等
文件输入输出 File Input/Output (IO) 读取和写入数组数据到磁盘文件,支持多种数据格式,如文本文件、二进制文件等。 数据存储、数据读取、数据导出等
结构化数组 Structured Arrays 创建和操作具有复合数据类型(结构体)的数组,可以指定字段名称和数据类型。 处理结构化数据、数据库操作等
掩码数组 Masked Arrays 在数组中使用掩码标记无效或缺失的数据,进行计算时可以自动忽略掩码元素。 缺失数据处理、数据过滤等

Ndarray

数组属性

当谈论NumPy数组的属性时,我们通常指的是数组对象本身的一些特征和元数据。下面是一些常见的NumPy数组属性及其说明,我将以Markdown表格的形式呈现给你。

名称 说明
shape 数组的维度,表示每个维度的大小。例如,(3, 4) 表示一个二维数组,有3行和4列。
dtype 数组元素的数据类型,例如int64float32bool等。
ndim 数组的维度数量,也称为数组的秩。例如,二维数组的ndim为2。
size 数组中元素的总数,等于各个维度大小的乘积。
itemsize 数组中每个元素的字节大小。例如,int64类型的元素占8个字节。
nbytes 数组中所有元素的总字节数,等于itemsize * size
real 复数数组的实部。对于实数数组,返回数组本身。
imag 复数数组的虚部。对于实数数组,返回全零数组。
flat 返回一个迭代器,用于以扁平化方式迭代数组中的元素。
strides 表示在每个维度上需要移动多少字节来获取下一个元素。
data 数组的缓冲区,包含数组的实际元素。
创建数组

当使用NumPy库处理数据时,有多种方法可以创建数组。下面是一些常用的方法,并以Markdown表格的形式列出它们的名称和说明:

名称 说明
numpy.array() 从列表、元组或其他数组对象创建一个NumPy数组。
numpy.zeros() 创建一个指定形状的全零数组。
numpy.ones() 创建一个指定形状的全1数组。
numpy.empty() 创建一个指定形状的空数组,数组元素的值是未初始化的。
numpy.arange() 根据指定的开始值、结束值和步长创建一个一维数组。
numpy.linspace() 在指定的开始值和结束值之间创建一个一维数组,可以指定数组的长度。
numpy.logspace() 在指定的开始值和结束值之间以对数刻度创建一个一维数组。
numpy.eye() 创建一个具有对角线为1的二维数组,其他位置为0。
python 复制代码
import numpy as np

# numpy.array()
arr = np.array([1, 2, 3])  # 参数: 输入的列表、元组或其他数组对象

# numpy.zeros()
zeros_arr = np.zeros((3, 3))  # 参数: 形状

# numpy.ones()
ones_arr = np.ones((2, 2))  # 参数: 形状

# numpy.empty()
empty_arr = np.empty((2, 2))  # 参数: 形状

# numpy.arange()
arange_arr = np.arange(0, 10, 2)  # 参数: 开始值、结束值、步长

# numpy.linspace()
linspace_arr = np.linspace(0, 1, 5)  # 参数: 开始值、结束值、数组长度

# numpy.logspace()
logspace_arr = np.logspace(0, 3, 4)  # 参数: 开始指数、结束指数、数组长度

# numpy.eye()
eye_arr = np.eye(3)  # 参数: 数组的大小

# numpy.random.rand()
rand_arr = np.random.rand(3, 3)  # 参数: 形状

# numpy.random.randn()
randn_arr = np.random.randn(2, 2)  # 参数: 形状

# numpy.random.randint()
randint_arr = np.random.randint(0, 10, (2, 2))  # 参数: 最小值、最大值、形状

# numpy.full()
full_arr = np.full((2, 2), 7)  # 参数: 形状、填充值

# numpy.tile()
tile_arr = np.tile([1, 2], 3)  # 参数: 数组、重复次数

# numpy.repeat()
repeat_arr = np.repeat([1, 2, 3], 3)  # 参数: 数组、重复次数
复制代码
						  🤞到这里,如果还有什么疑问🤞
					🎩欢迎私信博主问题哦,博主会尽自己能力为你解答疑惑的!🎩
					 	 🥳如果对你有帮助,你的赞是对博主最大的支持!!🥳
相关推荐
PaperData4 小时前
1988-2025年《中国人口和就业统计年鉴》全年份excel+PDF
数据库·人工智能·数据分析·经管
小王毕业啦4 小时前
(1990-2024年)个股交易活跃度、个股换手率
大数据·人工智能·数据挖掘·数据分析·区块链·社科数据
AI科技星5 小时前
光子本源三元结构定理(《全域数学·物理原本》)【乖乖数学】
人工智能·机器学习·数学建模·数据挖掘·agi
小王毕业啦6 小时前
2013-2023年 银行风险资产占比数据
大数据·人工智能·数据挖掘·数据分析·社科数据
云渊未归066 小时前
Python获取GitCode项目信息
python·数据分析·开源·网络爬虫·gitcode
郝学胜-神的一滴10 小时前
深度学习损失函数:从原理到实战之 Smooth L1 Loss
人工智能·pytorch·python·深度学习·机器学习·数据挖掘
高洁0111 小时前
AI项目管理实战:从开发到交付的全流程管控
深度学习·机器学习·数据挖掘·transformer·知识图谱
YJlio12 小时前
2026年5月5日60秒读懂世界:五一档票房、油价调整、汤姆斯杯夺冠与全球风险观察
数据分析·django·飞书·仪表盘·多维表格·图表联动
AI科技星21 小时前
全域数学·72分册·射影原本 无穷维射影几何卷细化子目录【乖乖数学】
人工智能·线性代数·算法·机器学习·数学建模·数据挖掘·量子计算
QFIUNE1 天前
CD-HIT 详解:序列去冗余、安装使用与聚类结果解析
linux·服务器·机器学习·数据挖掘·conda·聚类