在numpy中生成nxn数组



我可以生成这样的数组:

arr = np.array(range(0,36))
arr
#Output
array([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15, 16,
   17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
   34, 35])

我的问题是如何生成NXN数组:

array([[ 0, 1, 2, 3, 4, 5],
[6,  7,  8,  9, 10, 11],
[12, 13, 14, 15, 16, 17], 
[18, 19, 20, 21, 22, 23],
[24, 25, 26, 27, 28, 29],
[30, 31, 32, 33, 34, 35]])

您编写的方式看起来不正确,如果您是指一个6x6数组,则可以:

>>> arr = np.array(range(0,36)).reshape((6,6))
>>> arr
array([[ 0,  1,  2,  3,  4,  5],
       [ 6,  7,  8,  9, 10, 11],
       [12, 13, 14, 15, 16, 17],
       [18, 19, 20, 21, 22, 23],
       [24, 25, 26, 27, 28, 29],
       [30, 31, 32, 33, 34, 35]])

请注意,与您所需的输出相比,这里有一组外部方括号...

一个更紧凑的(.reshape可以采用多个ARG(,并且可能更快的方法(np.arange THX @jadsq(:

 np.array(np.arange(36)).reshape(6,6)

最新更新