Numpy 的 full_like(~)
方法从现有数组创建 Numpy 数组,并用所需的值填充它。这类似于其他 Numpy _like
方法,例如 zeros_like(~)
和 full_empty(~)
。
参数
1. a
| array-like
将用于构造 Numpy 数组的源数组。默认情况下,Numpy 数组将采用值的数据类型以及源数组的大小。
2. fill_value
| number
用于填充 Numpy 数组的值。
3. dtype
| string
或 type
| 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_value
为 2.5
,我们的 Numpy 数组也会填充值为 2
的 int
。发生这种情况是因为原始 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]])
相关用法
- Python NumPy full方法用法及代码示例
- Python functools.wraps用法及代码示例
- Python functools.singledispatchmethod用法及代码示例
- Python functools.singledispatch用法及代码示例
- Python functools.partial用法及代码示例
- Python functools.partialmethod用法及代码示例
- Python functools.cache用法及代码示例
- Python functools.lru_cache用法及代码示例
- Python functools.reduce用法及代码示例
- Python functools.cached_property用法及代码示例
- Python functools.total_ordering用法及代码示例
- Python functools.wraps()用法及代码示例
- Python NumPy fliplr方法用法及代码示例
- Python dict fromkeys()用法及代码示例
- Python frexp()用法及代码示例
- Python BeautifulSoup find_next方法用法及代码示例
- Python NumPy floor方法用法及代码示例
- Python float转exponential用法及代码示例
- Python calendar firstweekday()用法及代码示例
- Python NumPy flatten方法用法及代码示例
- Python float.is_integer用法及代码示例
- Python Django format_lazy用法及代码示例
- Python format()用法及代码示例
- Python NumPy fill_diagonal方法用法及代码示例
注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 NumPy | full_like method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。