zoukankan      html  css  js  c++  java
  • numpy数组常用计算

    在说numpy库数组的计算之前先来看一下numpy数组形状的知识:

    • 创建一个数组之后,可以用shape来查看其形状,返回一个元组

        例如:a = np.array([[1, 2, 3], [4, 5, 6]])

              print(a.shape)   # 打印出 (2,3)

        其它的一维二维或三维数组也是同理,打印出对应形状的元组

    • 修改数组的形状可以用 reshape() 函数,参数传入一个元组

        例如:b = a.reshape((3, 2))

              print(b.shape)    # 打印出(3, 2)

        注意点:修改前后的数组中总元素要一致,具体情况还需具体分析  

    • flatten() 函数可以直接把数组展开,比如将数组a转换为一维

        例如:c = a.flatten()

           此时a将变为一个一维数组

    数组的计算:

    • 数组和数的计算  

        数组和数的计算一般都遵从广播原则,也就是在做加减乘除的时候会和数组里面的每一个都进行计算,最后返回一个数组

        

    • 数组和数组的计算

        相同维度的数组的计算一般就是对应的进行计算,很好理解:

        

        不同维度的数组进行计算,就要分析其能不能成功计算了:

        

        像这种广播原则理解起来有时候还是比较难以理解,有时候我们可以发挥一下空间想象能力,想象一下能不能成功计算,像一维数组和二维数组之间应该都是可以一眼看得出来的,主要是多维数组的理解上。

    • 像shape为(3, 3, 3)的数组和(3, 2) 的数组就是不能计算的;
    • 而shape为(3, 3, 2)的数组和(3, 2) 的数组就是可以计算的;
    • 并且shape为(3, 3, 2)的数组和(3, 3) 的数组也是可以计算的;          
  • 相关阅读:
    runlevel=$(set -- $(runlevel); eval "echo $$#" )
    MPLS
    sql server 查询存储过程返回值
    sql 游标的关闭和释放
    sql 查询某一列最大的数据
    flex label如何通过AS3实现颜色设置
    sql server 字符串拆分
    Linux centos 解决"不在 sudoers 文件中。此事将被报告"的问题
    Flex String拼接
    flex 判断对象的类型
  • 原文地址:https://www.cnblogs.com/springionic/p/11217123.html
Copyright © 2011-2022 走看看