numpy.fromfunction(function, shape, **kwargs):Construct an array by executing a function over each coordinate.
参数说明:function:回调函数
shape:整数元组,若是一维数组,则shape为(数组长度,)
下面通过几个例子看看numpy.fromfunction构造数组的机制
In [1]: import numpy as np
In [2]: np.fromfunction(lambda i :i ,(4,))
Out[2]: array([ 0., 1., 2., 3.])
In [3]: np.fromfunction(lambda i,j:i+j,(2,3))
Out[3]:
array([[ 0., 1., 2.],
[ 1., 2., 3.]])
看到上述结果是不是觉得有点奇怪,也不清楚怎么来的。那下面我们来看看传给回调函数的i,j的值到底是啥?给函数多传个参数行不行呢?
In [6]: def f(*args):
...: print(args)
...: np.fromfunction(f,(2,3))
...:
(array([[ 0., 0., 0.],
[ 1., 1., 1.]]), array([[ 0., 1., 2.],
[ 0., 1., 2.]]))
结果上看:传给回调函数确实是只有两个参数,是两个数组,这和shape参数到底有啥关系呢?

本文介绍了Numpy库中的fromfunction方法,该方法通过执行函数来构造数组。参数包括回调函数和数组形状,适用于一维或多维数组的生成。通过实例展示了其工作原理。
最低0.47元/天 解锁文章
528

被折叠的 条评论
为什么被折叠?



