Numpy:高维数组(矩阵)

简介: numpy库为python提供了很多方便的数学计算方法,尤其是提供了数组,极大方便了使用python进行矩阵运算,使其在机器学习和深度学习中得到有效利用,本文详细介绍一下高维矩阵问题。 平时我们使用最多的就是一,二维和三维矩阵,以前我容易将其跟立体几何联系起来。

numpy库为python提供了很多方便的数学计算方法,尤其是提供了数组,极大方便了使用python进行矩阵运算,使其在机器学习和深度学习中得到有效利用,本文详细介绍一下高维矩阵问题。

平时我们使用最多的就是一,二维和三维矩阵,以前我容易将其跟立体几何联系起来。后来发现这样是非常错误的,因为再高一点的维度就不能想象了。所以,按照矩阵的形式,从外向内,逐层分解才能掌握好矩阵。

正文:

将以下代码敲一遍就会豁然开朗:

import numpy as np

a=np.arange(10)
print(a)
print(a[0:9])  # 包头不包尾
print(a[3:6])
print(a[:5])  # :前面不写就是从下标为0开始
print(a[5:])  # :后面不写就是一直到最后一个元素
print(a[:])   # :前后都不写就是从头到尾



print('---------------')
'''
多维矩阵按括号的层级,从外向内,一次是第1,2,3,...维

b[]内用逗号将各维分开,分别代表第1,2,3...维元素

每个维度上都有自己的下标,也可以用':'取部分
'''
b= np.mat(np.arange(20).reshape(4,5))
print(b)
print(b[1:3,2:5])   # 先取第一维中下标为1,2的2部分,再取第二维中下标为2,3,4的3部分
print(b[:2,2:])     # 同理,前面不写从头开始,后面不写一直到末尾
print(b[:2,3])      # 当然,也可以在某维度上只取一行

print('-----------------')
c= np.arange(60).reshape(3,4,5)
print(c)
print(c[:2,2:4,1:4])  # 从外向内一层一层的,不改变矩阵维度

print('-------------------')
d= np.arange(240).reshape(3,4,5,4)
print(d)
print(d[:2,1:3,2:5,1:3])
目录
相关文章
|
3月前
|
Ubuntu Linux 计算机视觉
NumPy 秘籍中文第二版:二、高级索引和数组概念
NumPy 秘籍中文第二版:二、高级索引和数组概念
52 0
|
3月前
|
存储 算法 数据挖掘
NumPy 数组学习手册:6~7
NumPy 数组学习手册:6~7
38 0
|
2月前
|
存储 索引 Python
一文掌握python数组numpy的全部用法(零基础学python(二))
一文掌握python数组numpy的全部用法(零基础学python(二))
28 0
|
4月前
|
机器学习/深度学习 PyTorch 算法框架/工具
PyTorch基础之张量模块数据类型、基本操作、与Numpy数组的操作详解(附源码 简单全面)
PyTorch基础之张量模块数据类型、基本操作、与Numpy数组的操作详解(附源码 简单全面)
36 0
|
4天前
|
存储 算法 数据处理
《Numpy 简易速速上手小册》第3章:Numpy 数组操作与变换(2024 最新版)
《Numpy 简易速速上手小册》第3章:Numpy 数组操作与变换(2024 最新版)
24 0
|
4天前
|
存储 数据采集 数据挖掘
《Numpy 简易速速上手小册》第2章:Numpy 数据类型和数组构造(2024 最新版)
《Numpy 简易速速上手小册》第2章:Numpy 数据类型和数组构造(2024 最新版)
21 0
|
6天前
|
存储 机器学习/深度学习 数据挖掘
自定义数据类型与NumPy结构数组详解
【4月更文挑战第17天】本文详细介绍了NumPy中的自定义数据类型和结构数组。通过`numpy.dtype`可创建自定义数据类型,如示例中的包含整数和浮点数字段的数组。结构数组能存储不同类型的元素,每行作为一个记录,包含多个字段。创建结构数组时,定义字段及其数据类型,然后通过字段名进行访问和操作。掌握这些技术能提升数据处理效率和灵活性,尤其在科学计算和数据分析领域。
|
6天前
|
搜索推荐 数据挖掘 数据处理
NumPy数组统计与排序方法全览
【4月更文挑战第17天】本文介绍了NumPy在Python中的数组统计和排序功能。主要包括计算平均值、标准差和方差的`np.mean()`, `np.std()`, `np.var()`方法,以及求最大值、最小值、百分位数的功能。在排序方面,讲解了基本排序的`np.sort()`,获取排序索引的`np.argsort()`,逆序排序和随机排序的方法。这些工具对于数据分析和科学计算十分实用,能有效提升数据处理效率。
|
6天前
|
存储 数据处理 Python
NumPy数组运算:元素级与广播机制剖析
【4月更文挑战第17天】NumPy是Python数值计算库,提供元素级运算和广播机制。元素级运算针对数组每个元素单独计算,如加法、减法等;广播机制允许不同形状数组间运算,通过扩展小数组形状匹配大数组。了解这两点能帮助更好地运用NumPy进行数值计算和数据处理。
|
6天前
|
存储 索引 Python
深入解析NumPy数组的形状与重塑
【4月更文挑战第17天】本文深入解析了NumPy数组的形状和重塑。数组形状是表示数组维度和大小的元组,可通过`shape`属性获取。重塑允许改变数组形状而不改数据,需保证元素总数不变。`reshape`方法用于重塑,其中`-1`可让NumPy自动计算尺寸。注意重塑遵循元素总数相等、仅一次`-1`、内存存储顺序及返回新数组的原则。理解和掌握这些概念对高效使用NumPy处理多维数组至关重要。