0
点赞
收藏
分享

微信扫一扫

numpy的引入及数组操作

雪域迷影 2022-04-29 阅读 69
优势
  • 快速;
  • 方便;
  • 科学计算的基础库;
介绍

一个在Python中做科学计算的基础库,重在数值计算,也是大部分Python科学计算库的基础库,多用在大型、多维数组上执行数值运算。

使用

数组
  • 创建数组:
    import numpy as np
    a_1 = np.array([1, 2, 3, 4, 5])
    a_2 = np.array(range(1, 6))
    a_3 = np.arange(1, 6)
    
    • 以上三个数组的内容相同;
    • arange()与range()区别:
      • arange([start, ]stop[, step][, dtype=None])
        • dtype是指数组中存放的数据的类型。会在Python基础类型后加一个显示位数的数字,比如int64(表示有符号和无符号位的64位(8字节)整型数据);
        • 默认根据电脑位数存储;
        • 传入参数可更改数据类型(比如np.int8);
        • 使用astype()方法可通过传参改变数组类型,会形成新数组,不影响原数组数据;
    np.random.random()
    
    • 生成0~1的随机小数;
    np.round(array, n)
    
    • 对传入的数列进行取N位小数操作;
  • 数组的形状:
    • 查看形状:
      • array.shape()
    • 重塑形状:
      • array.reshape(x,y,z[,…])
        • n个参数则产生n维数组;
        • 举例:
          array_1 = np.arange(24)
          array_2 = array_1.reshape(2, 3, 4)
          
          输出结果为:
          [ 0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23] 
           [[[ 0  1  2  3]
            [ 4  5  6  7]
            [ 8  9 10 11]]
          
           [[12 13 14 15]
            [16 17 18 19]
            [20 21 22 23]]]
          
          • 注意:数组元素数目必须与参数乘积相等,否则报错;
      • array.flatten()
        • 将数组展开成一维数组;
  • 数组的计算:
    • 数组与数字做运算:
      • 对数组进行加减乘除相当于对数组的每个数字进行相应计算;
      • 注意:在numpy中对0做除法,0/0 = nan;n/0 = inf;
    • 数组与数组同形时做运算,对应位置做运算;
    • 数组与数组列数相同时,每行做一次运算;
    • 数组与数组行数相同时,每列做一次运算;
    • 注意:如果两个数组的后缘维度(从末尾开始算起的维度)的轴长度相符或者其中一方的长度为一,则默认他们是广播兼容的。广播会在缺失或(和)长度为一的维度上进行;
举报

相关推荐

0 条评论