博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
numpy学习(1)
阅读量:3951 次
发布时间:2019-05-24

本文共 1748 字,大约阅读时间需要 5 分钟。

1.numpy学习(1)

1.1简介

数组与矩阵运算,提供大量数组运算的数学函数库。

  • 一个强大的N维数组对象 ndarray
  • 广播功能函数
  • 整合 C/C++/Fortran 代码的工具
  • 线性代数、傅里叶变换、随机数生成等功能

常与 SciPy和 Matplotlib(绘图库)一起使用, 这种组合广泛用于替代 MatLab

1.2ndarray对象

ndarray 内部由以下内容组成:

  • 一个指向数据(内存或内存映射文件中的一块数据)的指针。
  • dtype,数据类型 ,描述在数组中的固定大小值的格子。
  • shape,表示各数组维度大小的元组。
  • stride,跨度元组。类似切片中的步长。

创建一个 ndarray :调用 NumPy 的 array 函数

numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)b=np.array([[4,5,6],[7,8,9],[1,2,3]],dtype=complex)

参数说明:

名称 描述
object 数组或嵌套的数列
dtype 数组元素的数据类型,可选
copy 对象是否需要复制,可选
order 创建数组的样式,C为行方向,F为列方向,A为任意方向(默认)
subok 默认返回一个与基类类型一致的数组
ndmin 指定生成数组的最小维度

1.3数据类型

1.4数据属性

NumPy 的数组中比较重要 ndarray 对象属性有:

属性 说明
ndarray.ndim 秩,即轴的数量或维度的数量
ndarray.shape 数组的维度,对于矩阵,n 行 m 列
ndarray.size 数组元素的总个数,相当于 .shape 中 n*m 的值
ndarray.dtype ndarray 对象的元素类型
ndarray.itemsize ndarray 对象中每个元素的大小,以字节为单位
ndarray.flags ndarray 对象的内存信息
ndarray.real ndarray元素的实部
ndarray.imag ndarray 元素的虚部
ndarray.data 包含实际数组元素的缓冲区,由于一般通过数组的索引获取元素,所以通常不需要使用这个属性。

1.5创建数组

**empty **:用来创建一个指定形状(shape)、数据类型(dtype)且未初始化的数组

numpy.empty(shape, dtype = float, order = 'C')x = np.empty([3,2], dtype = int)

zeros:创建指定大小的数组,数组元素以 0 来填充

numpy.zeros(shape, dtype = float, order = 'C')# 默认为浮点数x = np.zeros(5) # 设置类型为整数y = np.zeros((5,), dtype = np.int) # 自定义类型z = np.zeros((2,2), dtype = [('x', 'i4'), ('y', 'i4')])

ones:创建指定形状的数组,数组元素以 1 来填充

numpy.ones(shape, dtype = None, order = 'C')# 默认为浮点数x = np.ones(5) # 自定义类型x = np.ones([2,2], dtype = int)

arange:创建单行元素

arange(start, stop,[step])ndarray13 = np.arange(10)                  #产生0-9共10个元素ndarray14 = np.arange(10, 20)              #产生从10-19共10个元素ndarray15 = np.arange(10, 20, 2)           #产生10 12 14 16 18, 2为step 间隔为2

**eye:**创建单位矩阵

numpy.eye(N,M=None, k=0, dtype=
)#N矩阵的阶数,K为对角线位置,上移

转载地址:http://abyzi.baihongyu.com/

你可能感兴趣的文章
grep与正则表达式
查看>>
git patch 使用
查看>>
如何进行Linux Kernel 开发
查看>>
技术人攻略访谈二十九:平行世界守护者
查看>>
制作initramfs/initrd镜像
查看>>
浅析busybox查找命令和调用相应命令函数的实现流程框架
查看>>
利用linux dd和tr命令生成特定的数据
查看>>
Fundamentals of battery fuel-gauging
查看>>
armlinux内核启动--内存初始化管理
查看>>
rk3188--4.android用initrd文件系统启动流程
查看>>
rk3188--3.initramfs_data.cpio的生成及使用
查看>>
使用QEMU模拟器运行Linux kernel
查看>>
Android init.rc文件解析过程详解(一)
查看>>
[原创]Android init.rc文件解析过程详解(二)
查看>>
Android init.rc文件解析过程详解(三)
查看>>
一个程序员的奋斗历程
查看>>
谷歌Android手机应用开发环境的搭建 转载
查看>>
Google 手机操作系统 Android 开发教程 转载
查看>>
小议基于Android平台的流媒体播放器的设计 转载
查看>>
Ubuntu常用命令与技巧 转载
查看>>