当前位置: 首页 > news >正文

NumPy数据处理详解的笔记2

NumPy数据处理详解的笔记2

第1章NumPy基础

NumPy是用于处理多维数组的数值运算库,不仅可用于
机器学习,还可以用于图像处理,语言处理等任务。

1.2 多维数据结构ndarray的基础

在学习NumPy的过程中,只要理解了ndarray的相关知识,
就能够编写出高性能,更加节省内存空间的代码。

1.2.1 ndarray

ndarray就是用于对包含同样属性同样大小的元素的多维
数组进行处理的一个Python类。

1.2.2 属性

T      返回经过转置的矩阵,当维度小于2,返回原数组
dtype  ndarray中元素的类型
size   元素的数量
ndim   维度
shape  使用元组表示的ndarray的形状

1.2.3 内存布局

使用ndarray类生成的实例在内存中是以一维数组的形式
进行存储的。先保存用于描述数据的类型,形状等信息的
元数据,再保存数组本身的数据,有行主序和列主序两种
排序方式。

1.2.4 步长

在使用字节数表示访问每个元素时,这个在内存空间中所需
移动的距离的属性称为步长。

1.2.5 广播

ndarray的一大特点是对广播功能的支持。

1.3 广播


1.3.1 何为广播

例如,对两个数组中的元素进行加法运算时,可能会遇到这两个
数组的形状不一致的问题。所谓广播就是对这个情况中的数组形
状进行调整。

1.3.2 广播的运行机制

规则1:在作为广播对象的数组中,如果维数不同,在其shape的
       开头加入1,以对形状进行调整。
规则2:可以广播的条件是每个维度的元素数量与最大数量相同或者为1。
规则3:结果中所输出的数组形状,会根据每个维度中元素的最大值进行调整
规则4:对于元素数量为1的维度所在的轴,使用相同的值进行重复填充。

http://www.lryc.cn/news/311759.html

相关文章:

  • xsslabs第四关
  • Qt下使用modbus-c库实现PLC线圈/保持寄存器的读写
  • C++ 滑动窗口
  • 【深度学习】TensorFlow基础介绍
  • springcloud:3.3测试重试机制
  • 【笔记】【电子科大 离散数学】 3.谓词逻辑
  • 倍增算法C++
  • uniapp制作--进步器的选择
  • 前端高频面试--查缺补漏篇
  • 【计算机学习】-- 网页视频加速
  • 系统运维-Linux配置C、C++、Go语言编译环境
  • 【设计模式】(二)设计模式六大设计原则
  • go-zero官网
  • Redis的应用场景以及常见问题(持续更新)
  • 前端添加压缩包内文件名称校验
  • redis02 安装
  • #QT(QT时钟)
  • T-RAG:结合实体检测的增强检索生成模型
  • u-boot: NAND 驱动简介
  • 史上最全的大数据开发八股文【自己的吐血总结】
  • 数据库学习案例20240304-mysql数据库案例总结(碎片,统计信息)
  • 【小白友好】LeetCode 删除并获得点数
  • c#委托、lambda、事件
  • 每日一练——9×9乘法表
  • 大白话解析LevelDB:ShardedLRUCache
  • GDOI2024游记
  • 学编程怎么样才能更快入手,编程怎么简单易学
  • Android 通知--判断通知是否有跳转
  • 【计算机网络】IO多路转接之poll
  • 性能比较:in和exists