24人参与 • 2026-01-08 • ar
np.ones 是 numpy 中用于创建指定形状全1数组的基础函数,语法结构为:
numpy.ones(shape, dtype=none, order='c', *, like=none)
| 参数名 | 类型 | 作用 | 典型取值 |
|---|---|---|---|
| shape | 整数/元组 | 定义数组维度 | 5(1d)、(3,4)(2d)、(2,2,3)(3d) |
| dtype | 数据类型 | 指定元素类型 | np.int32、np.float64(默认) |
| order | {'c','f'} | 内存存储顺序 | 'c'(行优先)、'f'(列优先) |
| 存储方式 | 顺序规则 | 适用场景 | 典型语言 |
|---|---|---|---|
| 'c' | 行优先 | 按行遍历操作 | c/python |
| 'f' | 列优先 | 按列计算(如矩阵运算) | fortran/matlab |
import numpy as np # 1. 创建1维数组 arr1d = np.ones(5) # array([1., 1., 1., 1., 1.]) # 2. 创建2维矩阵 arr2d = np.ones((2, 3), dtype=int) # array([[1, 1, 1], [1, 1, 1]]) # 3. 创建3维张量 arr3d = np.ones((2, 2, 2), dtype=np.float32)
input_size = 100 hidden_size = 50 weights = np.ones((input_size, hidden_size)) * 0.01 # 小值初始化
data = np.array([1, 3, 5, 7, 9]) mask = np.ones(5, dtype=bool) mask[[1, 3]] = false # array([ true, false, true, false, true]) filtered = data[mask] # array([1, 5, 9])
# 创建单位矩阵(等价于np.eye(3)) identity = np.ones((3, 3)) * np.eye(3) # 生成指定范围的等差数列 start, 终止 = 2, 10 steps = np.ones(5) * np.linspace(start, 终止, 5)
| 初始化方式 | 耗时(1000x1000数组) | 内存占用 |
|---|---|---|
| np.ones | 1.2ms | 8mb |
| 列表推导式 | 28.5ms | 16mb |
dtype=int获取整数数组(2,3)而非2,3order='f'优化列优先访问性能到此这篇关于numpy np.ones函数的具体使用的文章就介绍到这了,更多相关numpy np.ones内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
您想发表意见!!点此发布评论
版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。
发表评论