当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python NumPy full_like方法用法及代码示例


Numpy 的 full_like(~) 方法从现有数组创建 Numpy 数组,并用所需的值填充它。这类似于其他 Numpy _like 方法,例如 zeros_like(~) full_empty(~)

参数

1. a | array-like

将用于构造 Numpy 数组的源数组。默认情况下,Numpy 数组将采用值的数据类型以及源数组的大小。

2. fill_value | number

用于填充 Numpy 数组的值。

3. dtype | stringtype | optional

Numpy 数组所需的数据类型。默认情况下,数据类型与源数组的数据类型相同。

返回值

填充所需值的 Numpy 数组,其形状和类型与源数组相同。

例子

使用 Numpy 数组

x = np.array([3,4,5])
np.full_like(x, 7)



array([7, 7, 7])

使用 Python 数组

x = [1,2,3]
np.full_like(x, 4)



array([4., 4., 4.])
警告

使用与源数组不同的类型填充值

假设您想使用浮点数创建 Numpy 数组,例如 2.5 。你可能会遇到以下陷阱:

x = np.array([3,4,5])
np.full_like(x, 2.5)



array([2, 2, 2])

即使我们指定 fill_value2.5 ,我们的 Numpy 数组也会填充值为 2int 。发生这种情况是因为原始 Numpy 数组(即本例中的 x)的类型为 int,因此 full_like 方法会自动假定您希望将 int 用于新的 Numpy 数组。

解决方案是指定dtype参数,如下所示:

x = np.array([3,4,5])
np.full_like(x, 2.5, dtype=float)



array([2.5, 2.5, 2.5])

指定类型

x = [1,2,3]
np.full_like(x, 4, dtype="float")



array([4., 4., 4.])

请注意输出 Numpy 数组中的值是 4. 而不仅仅是 4 - 这意味着这些值是浮点数。

二维数组

x = [[1,2], [3,4]]
np.full_like(x, 5)



array([[5, 5],
       [5, 5]])

相关用法


注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 NumPy | full_like method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。