有人能解释一下numpy是如何显示多维数组的吗?

2024-09-28 01:30:26 发布

您现在位置:Python中文网/ 问答频道 /正文

发出以下命令:

np.ones((2,2,3))

我得到以下信息

array([[[1., 1., 1.],
        [1., 1., 1.]],

       [[1., 1., 1.],
        [1., 1., 1.]]])

从我阅读docos/blogs等的理解来看,这是一个多维数组,实际上是3,2x2矩阵的组合,所以我们有2列2行和3的“深度”维度,这意味着numpy使用(行,列,深度)系统进行三维数组。你知道吗

那么我应该如何解释终端中显示的是2个3x2矩阵,表示(深度、行、列)系统。你知道吗


Tags: 命令numpy信息终端系统npones矩阵
1条回答
网友
1楼 · 发布于 2024-09-28 01:30:26

与Matlab(主要是列)不同,NumPy使用row-major indexing:分组从最左边的索引开始。因此,ones((2, 3, 4))由两个ones((3, 4))数组组成,每个数组由三个ones((4,))数组组成。你知道吗

从左到右是从外到内。而且,它正在缓慢地从索引更改为快速更改索引(如果按顺序读取所有元素)。你知道吗

>>> np.ones((2, 3, 4))
array([[[ 1.,  1.,  1.,  1.],
        [ 1.,  1.,  1.,  1.],
        [ 1.,  1.,  1.,  1.]],

       [[ 1.,  1.,  1.,  1.],
        [ 1.,  1.,  1.,  1.],
        [ 1.,  1.,  1.,  1.]]])

对于二维数组,它是行-列。对于3D,它是深度行列,等等;对于4D,它是行列。你知道吗

相关问题 更多 >

    热门问题