在说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) 的数组也是可以计算的;          

numpy数组常用计算的更多相关文章

  1. numpy 数组的计算

    一.数组和数的计算 数组和数计算,数组中的每个元素和数进行计算 1.加 import numpy as np arr1 = np.arange(12).reshape(3, 4) print(arr1 ...

  2. numpy数组的计算

    1.数组的形状 查看数组的形状: import numpy as np a = np.array([[1, 2, 3, 4, 5], [5, 6, 7, 8, 9]]) print(a.shape) ...

  3. Python数据科学手册-Numpy数组的计算,通用函数

    Python的默认实现(CPython)处理某些操作非常慢,因为动态性和解释性, CPython 在每次循环必须左数据类型的检查和函数的调度..在编译是进行这样的操作.就会加快执行速度. 通用函数介绍 ...

  4. Python数据科学手册-Numpy数组的计算:比较、掩码和布尔逻辑,花哨的索引

    Numpy的通用函数可以用来替代循环, 快速实现数组的逐元素的 运算 同样,使用其他通用函数实现数组的逐元素的 比较 < > 这些运算结果 是一个布尔数据类型的数组. 有6种标准的比较操作 ...

  5. Python数据科学手册-Numpy数组的计算:广播

    广播可以简单理解为用于不同大小数组的二元通用函数(加减乘等)的一组规则 二元运算符是对相应元素逐个计算 广播允许这些二元运算符可以用于不同大小的数组 更高维度的数组 更复杂的情况,对俩个数组的同时广播 ...

  6. 操作 numpy 数组的常用函数

    操作 numpy 数组的常用函数 where 使用 where 函数能将索引掩码转换成索引位置: indices = where(mask) indices => (array([11, 12, ...

  7. NumPy(数组计算)

    一.介绍 NumPy是高性能科学计算和数据分析的基础包.它是pandas等其他各种工具的基础. 1.主要功能 1)ndarray,一个多维数组结构,高效且节省空间2)无需循环对整组数据进行快速运算的数 ...

  8. numpy——基础数组与计算

    In [1]: import numpy as np In [11]: # 创建数组 a = np.array([1,2,3,4,5]) In [12]: a Out[12]: array([1, 2 ...

  9. Numpy.frompyfunc()将计算单个值的函数转化为计算数组中每个元素的函数

    Numpy.frompyfunc()将计算单个值的函数转化为计算数组中每个元素的函数 不再通过遍历,对数组中的元素进行运算,利用frompyfunc()将计算单个值的函数转化为计算数组中每个元素的函数 ...

随机推荐

  1. 为一台全新的电脑构建JavaEE开发环境

    1.开发以外的常用软件 2.下载各种资源(x64,2017年8月)JDKhttp://www.oracle.com/technetwork/java/javase/downloads/jdk8-dow ...

  2. jacky解读麻省理工《计算机科学与Python编程导论》第1集

    文:@数据分析-jacky(朱元禄) (一)导言 本课程讲的中心思想就是五个字:计算机思维 Python只是辅助工具,是辅助大家理解计算机思维,仅此而已 急功近利是人性,适得其反是结果:我们看到有很多 ...

  3. pip 安装指定版本的工具

    记录一下避免忘记 安装facebook-business的版本在3.0 到 4.0之间的最新版本, == : 指定版本号 pip install "facebook-business> ...

  4. ICEM—三分之一风扇

    原视频下载地址:https://yunpan.cn/cSwYBI6sb9vHS  访问密码 9059

  5. jenkins的任务卡住

    今天做jenkins任务的时候,发现一个启动后,一直卡住,在那转圈圈,其实这个时候,任务已经执行完了. 经过分析,因为这个任务是启动一个web服务,直接在机器上执行时,直接占用一个终端. 解决办法,放 ...

  6. ntp时间同步服务器的搭建

    CentOS系统一般自带安装有ntp服务,仅需做相关配置即可. 一.配置ntp服务器: 在选定的ntp服务器上vim /etc/ntp.conf 添加一行:restrict default nomod ...

  7. Mac下持续集成-与JMeter与Ant执行后自动发送邮件的整合+定时任务

    mac定时任务的开启: Last login: Tue Aug 13 22:49:54 on ttys004 (base) localhost:~ ligaijiang$ sudo launchctl ...

  8. c++ vector容器自增长

    #include <iostream>#include <vector> using namespace std; int main(){ vector<int> ...

  9. 阶段5 3.微服务项目【学成在线】_day05 消息中间件RabbitMQ_14.RabbitMQ研究-与springboot整合-搭建环境

    我们选择基于Spring-Rabbit去操作RabbitMQ https://github.com/spring-projects/spring-amqp 使用spring-boot-starter- ...

  10. Python3 继承

    继承的好处:子类实现父类的全部功能 1.单继承 若父类和子类有共同的方法或属性,则子类对父类方法或属性进行覆盖 class ClassA: def __init__(self): self.a = ' ...