numpy.fromfunction #
- 麻木的。fromfunction ( function , shape , * , dtype=<class 'float'> , like=None , **kwargs ) [来源] #
通过对每个坐标执行函数来构造数组。
因此,生成的数组在坐标 处有一个值。
fn(x, y, z)
(x, y, z)
- 参数:
- 函数可调用
该函数使用 N 个参数调用,其中 N 是 的秩
shape
。每个参数代表数组沿特定轴变化的坐标。例如,如果shape
were ,那么参数将是 和(2, 2)
array([[0, 0], [1, 1]])
array([[0, 1], [0, 1]])
- shape (N,) 整数元组
输出数组的形状,它还确定传递给function 的坐标数组的形状。
- dtype数据类型,可选
传递给function的坐标数组的数据类型。默认情况下,
dtype
是浮动的。- 类似array_like,可选
允许创建非 NumPy 数组的引用对象。如果传入的类似数组
like
支持__array_function__
协议,则结果将由它定义。在这种情况下,它确保创建一个与通过此参数传入的数组对象兼容的数组对象。1.20.0 版本中的新增功能。
- 返回:
- 从任意函数
函数调用的结果直接传回。因此 的形状完全由函数
fromfunction
决定 。如果函数返回标量值,则 的形状 将与参数不匹配。fromfunction
shape
笔记
除了
dtype
和like之外的关键字被传递给function。例子
>>> np.fromfunction(lambda i, j: i, (2, 2), dtype=float) array([[0., 0.], [1., 1.]])
>>> np.fromfunction(lambda i, j: j, (2, 2), dtype=float) array([[0., 1.], [0., 1.]])
>>> np.fromfunction(lambda i, j: i == j, (3, 3), dtype=int) array([[ True, False, False], [False, True, False], [False, False, True]])
>>> np.fromfunction(lambda i, j: i + j, (3, 3), dtype=int) array([[0, 1, 2], [1, 2, 3], [2, 3, 4]])