使用np.arange创建的数组max 2的维数是多少?

时间:2017-06-30 14:30:13

标签: python arrays numpy

我是NumPy的新人。当我阅读NumPy用户指南并做示例时,我看到了一个让我提出问题的例子。

例如,Python给出了以下结果:

>>> import numpy as np
>>> a = np.arange(6)
>>> a.ndim
1
>>> b = np.arange(6).reshape(2,3)
>>> b.ndim
2
>>> c = np.arange(6).reshape(3,2)
>>> c.ndim
2

我预计c.ndim会给出3而不是2.所以我的问题是,当使用np.arange()函数创建这些数组时,数组的最大维度是2吗?

1 个答案:

答案 0 :(得分:2)

您实际在做的是首先创建一个包含arange然后reshape的一维数组。

a = np.arange(20) # of dimension 1
a = a.reshape(4,5)
print(a.ndim) # returns 2 because the array became a 2D 4x5
a = a.reshape(2,5,2)
print(a.ndim) # returns 3 because the array becomes a 3D 2x5x2

总结一下,您正在使用reshape方法强制将1D np.array重新整形为2D,添加更多参数以访问更多维度。