开发者社区> Chin2018> 正文

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])

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Python 数学运算库Numpy入门基础(一)创建数组
Python 数学运算库Numpy入门基础(一)创建数组
20 0
Python 之 NumPy 简介和创建数组
Python 之 NumPy 简介和创建数组
50 0
numpy数组中冒号[:,:,0]与[...,0]的区别
x[:,:,0] 意思是对数组x切片,可以想象成一个正方体数据,每次切下一个面的数据。第二维取0则得出来[3,4]大小的数组
30 0
Numpy中数组和矩阵操作的数学函数
Numpy 是一个强大的 Python 计算库。它提供了广泛的数学函数,可以对数组和矩阵执行各种操作。本文中将整理一些基本和常用的数学操作。
74 0
基于Numpy数组的图像分割 基于PIL对图像进行拼接
基于Numpy数组的图像分割 基于PIL对图像进行拼接
94 0
Numpy数组——1.数组的创建
Numpy数组——1.数组的创建
94 0
Python, Numpy求 list 数组均值,方差,标准差
Python, Numpy求 list 数组均值,方差,标准差
174 0
C中处理Python的Numpy数组的代码范例
C中处理Python的Numpy数组的代码范例
15 0
【Numpy】数组的创建和常用函数(排序、连接、属性、reshape、索引和切片)
【Numpy】数组的创建和常用函数(排序、连接、属性、reshape、索引和切片)
46 0
在向量化NumPy数组上进行移动窗口操作
在向量化NumPy数组上进行移动窗口操作
142 0
NumPy中的广播:对不同形状的数组进行操作
NumPy中的广播:对不同形状的数组进行操作
33 0
Python数据分析之numpy数组全解析
Python数据分析之numpy数组全解析
69 0
Python学习笔记第三十八天(NumPy 迭代数组)
Python学习笔记第三十八天讲解控制遍历顺序、修改数组中元素的值、使用外部循环、广播迭代的用法。
49 0
Python学习笔记第三十四天(NumPy 从数值范围创建数组)
Python学习笔记第三十四天讲解NumPy 从数值范围创建数组、numpy.arange、numpy.linspace、numpy.logspace的用法。
60 0
Python学习笔记第三十三天(NumPy 从已有的数组创建数组)
Python学习笔记第三十一天讲解NumPy 从已有的数组创建数组、numpy.asarray、numpy.frombuffer、numpy.fromiter的用法。
37 0
+关注
Chin2018
蹭热度,自学AI
文章
问答
视频
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载