千家信息网

numpy中轴与维度的详细介绍

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章主要讲解了"numpy中轴与维度的详细介绍",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"numpy中轴与维度的详细介绍"吧!NumPy's m
千家信息网最后更新 2026年11月01日numpy中轴与维度的详细介绍

这篇文章主要讲解了"numpy中轴与维度的详细介绍",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"numpy中轴与维度的详细介绍"吧!

NumPy's main object is the homogeneous multidimensional array. It is a table of elements (usually numbers), all of the same type, indexed by a tuple of positive integers. In NumPy dimensions are called axes. The number of axes is rank.

For example, the coordinates of a point in 3D space [1, 2, 1] is an array of rank 1, because it has one axis. That axis has a length of 3. In the example pictured below, the array has rank 2 (it is 2-dimensional). The first dimension (axis) has a length of 2, the second dimension has a length of 3.

[[ 1., 0., 0.], [ 0., 1., 2.]]

ndarray.ndim

数组轴的个数,在python的世界中,轴的个数被称作秩

>> X = np.reshape(np.arange(24), (2, 3, 4))  # 也即 2 行 3 列的 4 个平面(plane)>> Xarray([[[ 0, 1, 2, 3],    [ 4, 5, 6, 7],    [ 8, 9, 10, 11]],    [[12, 13, 14, 15],    [16, 17, 18, 19],    [20, 21, 22, 23]]])

shape函数是numpy.core.fromnumeric中的函数,它的功能是读取矩阵的长度,比如shape[0]就是读取矩阵第一维度的长度。

shape(x)

(2,3,4)

shape(x)[0]

2

或者

x.shape[0]

2

再来分别看每一个平面的构成:

>> X[:, :, 0]array([[ 0, 4, 8],    [12, 16, 20]])>> X[:, :, 1]array([[ 1, 5, 9],    [13, 17, 21]])>> X[:, :, 2]array([[ 2, 6, 10],    [14, 18, 22]])>> X[:, :, 3]array([[ 3, 7, 11],    [15, 19, 23]])

也即在对 np.arange(24)(0, 1, 2, 3, ..., 23) 进行重新的排列时,在多维数组的多个轴的方向上,先分配最后一个轴(对于二维数组,即先分配行的方向,对于三维数组即先分配平面的方向)

reshpae,是数组对象中的方法,用于改变数组的形状。

二维数组

#!/usr/bin/env python # coding=utf-8 import numpy as np  a=np.array([1, 2, 3, 4, 5, 6, 7, 8]) print a d=a.reshape((2,4)) print d

三维数组

#!/usr/bin/env python # coding=utf-8 import numpy as np  a=np.array([1, 2, 3, 4, 5, 6, 7, 8]) print a f=a.reshape((2, 2, 2)) print f

形状变化的原则是数组元素不能发生改变,比如这样写就是错误的,因为数组元素发生了变化。

#!/usr/bin/env python # coding=utf-8 import numpy as np  a=np.array([1, 2, 3, 4, 5, 6, 7, 8]) print a print a.dtype e=a.reshape((2,2)) print e

注意:通过reshape生成的新数组和原始数组公用一个内存,也就是说,假如更改一个数组的元素,另一个数组也将发生改变。

#!/usr/bin/env python # coding=utf-8 import numpy as np  a=np.array([1, 2, 3, 4, 5, 6, 7, 8]) print a e=a.reshape((2, 4)) print e a[1]=100 print a print e

Python中reshape函数参数-1的意思

a=np.arange(0, 60, 10)>>>aarray([0,10,20,30,40,50])>>>a.reshape(-1,1)array([[0],[10],[20],[30],[40],[50]])

如果写成a.reshape(1,1)就会报错

ValueError:cannot reshape array of size 6 into shape (1,1)

>>> a = np.array([[1,2,3], [4,5,6]])>>> np.reshape(a, (3,-1)) # the unspecified value is inferred to be 2array([[1, 2],    [3, 4],    [5, 6]])

-1表示我懒得计算该填什么数字,由python通过a和其他的值3推测出来。

# 下面是两张2*3大小的照片(不知道有几张照片用-1代替),如何把所有二维照片给摊平成一维>>> image = np.array([[[1,2,3], [4,5,6]], [[1,1,1], [1,1,1]]])>>> image.shape(2, 2, 3)>>> image.reshape((-1, 6))array([[1, 2, 3, 4, 5, 6],    [1, 1, 1, 1, 1, 1]])

感谢各位的阅读,以上就是"numpy中轴与维度的详细介绍"的内容了,经过本文的学习后,相信大家对numpy中轴与维度的详细介绍这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

数组 维度 中轴 元素 函数 就是 方向 照片 二维 分配 学习 个数 内容 形状 矩阵 长度 面的 三维 变化 原始 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 善班互联网科技有限公司 互联网科技缩写 广州凡科互联网科技 多迪互联网科技有限公司 卓越科技互联网 招聘 华中科技有哪些互联网大佬 哈尔滨新华互联网科技学院 阿里巴巴算科技企业还是互联网 互联网科技热点资讯 北京华百购互联网科技有限公司 互联网保险科技创业 互联网行业科技股 四川慕妮娅互联网科技有限公司 互联网科技大赛获奖感言 科技赋能视角下互联网保险发展 广东工业互联网大赛深圳学泰科技 上海乐五互联网科技有限公司 广西泛欧互联网科技有限公司 盐城市攀科互联网科技有限公司 科技互联网专业工作会议发言稿 南京欣网互联网络科技有限公司 北京路客互联网科技有限公司 互联网属科技 平安科技 互联网 汇久创客互联网科技 中化能源互联网科技招聘 如何创新互联网科技 产业互联网科技服务公司 艺电能源互联网科技有限公司招聘 银川新华互联网科技学校是国营吗
0