科学计算库

  • Numpy
    • ndarray与python list的区别
      • ndarray
        • 底层内存顺序读写,时间复杂度O(1)
      • list
        • 底层内存随机读写,消费非常低
    • 特性
      • 高效性
        • Numpy直接使用C语言开发,内部解除了GIL(全局解释器锁),操作速度不受限于python解释器
      • 并行计算
        • numpy内置并行计算功能,支持多核心多线程计算
    • 语法
      • ndarray.shape
        • 数组维度元祖
      • ndarray.ndim
        • 数组维数
      • ndarray.size
        • 数组中元素个数
      • ndarray.itemsize
        • 一个数组元素的长度
      • ndarray.dtype
        • 数组元素的数据类型,需要使用type()获取
      • np.ones(shape,dtype)
        • 创建全1数组,shape元祖传入,dtype控制数据类型
      • np.ones_like(a,dtype)
        • 创建一个形状与a数组一样的数组,但是其中的值全部为1
      • np.zeros(shape,dtype)
        • 创建一个维度为shape的数组,其中的值全部为0
      • np.zeros_like(a,dtype)
        • 创建一个与a数组维度一致的数组,但其中的值全部为0
      • 深复制与潜复制
        • 深复制
          • np.asarray(a,dtype)
        • 潜复制
          • np.array(object,dtype)
      • 生成固定范围的数组
        • 等差数组
          • np.linspace(start,storp,num,endpoint)
          • start : 序列起始值
          • stop : 序列终止值
          • num : 要生成的元素数量,默认为50
          • endpoint : 序列中是否包含stop值,默认为ture
        • 差数组-指定步长
          • np.arange(start,stop,step,dtype)
            • start : 序列起始值
            • stop : 序列终止值
            • step : 步长
            • dtype : 数据类型
        • 等比数列
          • np.logspace(start,stop,num)
            • start : 起始值
            • stop : 终止值
            • num : 要创建的元素个数
      • 正态分布
        • 原理
          • 需要关注的参数:
            • 均值:u
              • 决定了这个图形的左右位置
            • 标准差:σ
              • 决定了这个图形是瘦高还是矮胖
        • np.random.randn(num)
          • 从标准正态分布中范围num个值
        • np.random.normal(loc=0.0,scale=1.0,size=None)
          • loc : float,此概率分布的均值,对应着整个分布的中心center
          • scale : float,此概率分布的标准差,对应于分布的宽度,scale越大越矮胖,scale越小越高瘦
          • size : int or tuple of ints 输出的shape,默认为none,只输出一个值
        • np.random.standard_normal(size=None)
          • 返回指定形状的标准正态分布的数组
      • 均匀分布
        • np.random.rand(num)
          • 返回num个均匀分布的随机数
        • np.random.uniform(low=0.0,high=1.0,size=None)
          • 从一个均匀分布[low,high)中随机采样,注意定义域左开右闭
          • low : 采样下界 , float类型,默认为0
          • high : 采样上界,float类型,默认值为1
          • size : 输出样本数目,为int或元祖(tuple)类型,例如size=(m,n,k) 则输出mnk个样本,缺失时输出1个值
          • 返回值类型 : ndarray类型,与size中描述一致
        • np.random.randint(low,high=None,size=None,dtype=‘I’)
          • 从一个均匀分布中随机采样,生成一个整数或者N维整数数组
          • 取整范围 : 若high不为None时,取[low,high)之间的随机整数,否则取[0,low)之间的随机整数
      • 数组切片
        • 对象[:,:]
          • 先行后列,先行限定,然后列限定,就一列那么就不用:符号,如有有多列就用:拼接
      • 形状改变
        • ndarray.reshape(shape,order)
          • 需要保持修改前后数组本身元素个数一致
          • 返回一个具有相同数据域,但shape不一样的视图
          • 行列不进行互换
          • -1 表示值带计算,只填入一个具体的值就可以
        • ndarray.resize(new_shape)
          • 修改数组本身的形状,可以更改原数组本身的数据,而relshape则不能修改原本的数据
          • 需要保持远元素个数修改前后数量相同
          • 行列不进行互换
        • ndarray.T
          • 数组转置,行转列
      • 类型修改
        • ndarray.astype(type)
          • 修改数据类型,并返回修改后的数组
          • type类型需要使用numpy.类型调用
        • ndarray.tostirng([order])或者ndarray.tobytes([order])
          • order 指的是可排列的容器存储起来的数据
          • 将排序好的数据转换成string类型或者char类型
      • 去重
        • numpy.unique(ndarray)
          • 传入数组后返回一个去重后的数组结果
      • 逻辑运算
        • ndarray[条件] =满足条件赋值
        • 通用判断函数
          • numpy.all() 全真为真
          • numpy.any() 一真为真
          • numpy.where(条件,真:赋值为x,假:赋值为y) 三木运算木
          • 符合运算符
            • 需要结合where使用
            • numpy.logical_and_ (条件1,条件2)全真为真
            • mumpy.logical_or_(条件1,条件2) 一真为真
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值