当前位置:首页 >> 脚本专栏

Python Numpy 自然数填充数组的实现

今天学习Numpy时,想到了一个小问题。在Numpy中,随机生成array是比较容易的,用np.random.rand即可。如下

a = np.random.rand(3,4)

可得

array([[ 0.05301444, 0.88175316, 0.01061948, 0.52498083],
[ 0.51335312, 0.60080174, 0.66578974, 0.88035774],
[ 0.16772843, 0.04972805, 0.10598578, 0.54610643]])

(有没有大神指点一下怎么样展示结果比较好,感谢!)

但是我想将一组自然数按顺序填充到array里面,需要怎么做呢?

在R语言里比较容易,将array里的data参数设为所需填充的自然数组成向量(比如(1:12)),再设置行列数即可,在Python里面好像没有找到类似的函数,np.array与R语言中的array不同,没有直接在该函数内设置行列的参数。我参考了R语言中的做法,先设定好data,再设定行列,分成两步来完成。

第一步先生成所需的自然数列a=np.arange(0,55)

通过a.shape可得(55,)

然后将a的shape进行重新分配a.reshape(11,-1) #11是行,-1是自动选择列

即可得到想要的结果

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, 36, 37, 38, 39],
[40, 41, 42, 43, 44],
[45, 46, 47, 48, 49],
[50, 51, 52, 53, 54]])

不知道这样做对不对,仅仅是我的想法。如果有大神愿意指点一下小白,十分感谢!

以上这篇Python Numpy 自然数填充数组的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。