NumPynp.ones函数的具体使用

作者:

文章目录
  • np.ones 是 NumPy 中用于创建指定形状全1数组的基础函数,语法结构为: numpy.ones(shape, dtype=None, order=’C’, *, like=None) 核心价值:提供标准化的数组初始化方式,避免手动填充1值的繁琐操作,广泛用于数值计算、矩阵运算和数据预处理场景。
  • 参数名 类型 作用 典型取值 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)
  • 初始化方式 耗时(1000×1000数组) 内存占用 np.ones 1.2ms 8MB 列表推导式 28.5ms 16MB
  • 类型混淆:默认返回浮点型数组,需显式指定dtype=int获取整数数组 形状错误:多维数组需传入元组,如(2,3)而非2,3 内存效率:创建大型数组时,可使用order='F'优化列优先访问性能 到此这篇关于NumPy np.ones函数的具体使用的文章就介绍到这了,更多相关NumPy np.ones内容请搜索风君子博客以前的文章或继续浏览下面的相关文章希望大家以后多多支持风君子博客! 您可能感兴趣的文章: Python中的Numpy入门教程 在NumPy中创建空数组/矩阵的方法 Python使用numpy产生正态分布随机数的向量或矩阵操作示例 Python numpy 提取矩阵的某一行或某一列的实例 numpy中的delete删除数组整行和整列的实例 浅谈numpy数组的几种排序方式 Python 取numpy数组的某几行某几列方法 Python Numpy 数组的初始化和基本操作 python的numpy模块安装不成功简单解决方法总结
  • 目录
    • 一、核心功能
    • 二、参数详解
    • 三、基础应用示例
    • 四、高级应用场景
    • 五、性能对比
    • 六、常见误区规避

    np.ones 是 NumPy 中用于创建指定形状全1数组的基础函数,语法结构为:

    numpy.ones(shape, dtype=None, order='C', *, like=None)
    
    • 核心价值:提供标准化的数组初始化方式,避免手动填充1值的繁琐操作,广泛用于数值计算、矩阵运算和数据预处理场景。

    参数名 类型 作用 典型取值
    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)
    

    1. 权重矩阵初始化
      在机器学习中初始化神经元连接权重:
    input_size = 100
    hidden_size = 50
    weights = np.ones((input_size, hidden_size)) * 0.01  # 小值初始化
    
    1. 掩码数组创建
      用于数据筛选或遮罩操作:
    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])
    
    1. 与其他函数组合运算
    # 创建单位矩阵(等价于np.eye(3))
    identity = np.ones((3, 3)) * np.eye(3)
    
    # 生成指定范围的等差数列
    start, 终止 = 2, 10
    steps = np.ones(5) * np.linspace(start, 终止, 5)
    

    初始化方式 耗时(1000×1000数组) 内存占用
    np.ones 1.2ms 8MB
    列表推导式 28.5ms 16MB

    1. 类型混淆:默认返回浮点型数组,需显式指定dtype=int获取整数数组
    2. 形状错误:多维数组需传入元组,如(2,3)而非2,3
    3. 内存效率:创建大型数组时,可使用order='F'优化列优先访问性能

    到此这篇关于NumPy np.ones函数的具体使用的文章就介绍到这了,更多相关NumPy np.ones内容请搜索风君子博客以前的文章或继续浏览下面的相关文章希望大家以后多多支持风君子博客!

    您可能感兴趣的文章:

    • Python中的Numpy入门教程
    • 在NumPy中创建空数组/矩阵的方法
    • Python使用numpy产生正态分布随机数的向量或矩阵操作示例
    • Python numpy 提取矩阵的某一行或某一列的实例
    • numpy中的delete删除数组整行和整列的实例
    • 浅谈numpy数组的几种排序方式
    • Python 取numpy数组的某几行某几列方法
    • Python Numpy 数组的初始化和基本操作
    • python的numpy模块安装不成功简单解决方法总结

    站内搜索