今天学习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 自然数填充数组的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持IIS7站长之家。