内容
数据维度
NumPy
CSV文件
访问多维数据
NumPy的便捷式文件截取
NumPy的随机数函数子库
NumPy的统计函数
NumBy的梯度函数
图像的数组表示
图像变换
数据维度
- 方面:
- 一组数据的组织
- 一维数据
- 由对等关系中的有序或无序数据组成,以线性方式组织
- 列表和集合类型
- 列表和数组
- 大批
- 相同的数据类型
- 列表
- 数据类型可以不同
- 一组数据的有序结构
- 二维数据
- 它由多个一维数据组成,是一维数据的组合。
- 列表类型
- 床单
- 多维数据
- 一维数据或多维数据在新维度中的扩展
- 列表类型
- 高维数据
- 仅使用最基本的二元关系显示数据之间的复杂结构
- 字典类型或数据表示格式
NumPy
- NumPy是一个开源的Python科学计算基础库
- 一个强大的N维数组对象 ndarray
- 广播功能
- 整合C/C++/Fortran代码的工具
- 线性代数、傅里叶变换、随机数生成等功能
- NumPy引用:
- import numpy as np
- N维数组对象 ndarray
- 传统:for循环
- import numpy as npdef npSum(): a = np.array([0,1,2,3,4]) b = np.array([9,8,7,6,5]) c = a**2 + b**3 return cprint(npSum())
- 一个维度中的所有数据类型往往相同,数组对象使用相同的数据类型,有助于节省计算和存储空间
- 一般要求所有元素类型相同(同质),数组下标从0开始
- ndarray由两部分构成
- 实际数据
- 描述这些数据的元数据(数据维度、数据类型)
- 例子
- np.array() 生成一个ndarray数组
- ndarray在程序中的别名是:array
- np.array() 输出成[]形式,元素由空格分隔
- axis轴:数据维度
- rank秩:轴的数量
- ndarray对象的属性
- ndarray的元素类型
- ndarray数组的创建方法
- 从Python中列表,元组等类型创建
- x=np.array(list/tuple)
- x=np.array(list/tuple,dtype=np.float32)
- 列表类型创建 元组类型创建 列表元组混合创建
- 使用NumPy中函数创建
- ndarray数组的变换
- 维度变换
- 元组类型转换
- 从字节流创建
- 从文件中读取特定格式
- ndarray数组的操作
- 数组的索引和切片
- 指数
- 获取数组中特定位置的元素的过程
- 片
- 获取数组元素子集的过程
- ndarray数组的运算
CSV文件
- CSV(Comma-Separated Value,逗号分隔值)
- CSV是一种常见的文件格式,用来存储批量数据
- 格式
- np.savetxt( frame,array,fmt=’%.18e’,delimiter=None )
- frame:文件,字符串或产生器,可以是.gz或.bz2的压缩文件
- array:存入文件的数组
- fmt:写入文件的格式,如:%d %.2f %.18e
- delimiter:分隔字符串,默认是任何空格
- 例子:
- a = np.arange(100).reshape(5,20)np.savetxt(‘a.csv’,a,fmt = ‘%d’,delimiter=’,’)
-
- 格式
- np.loadtxt(frame,dtype=np.float,delimiter=None,unpack=False)
- frame:文件,字符串或产生器,可以是.gz或.bz2的压缩文件
- dtype:数据类型,可选
- delimiter:分隔字符串,默认是任何空格
- unpack:如果True,读入属性将分别写入不同变量
- 例子
- b = np.loadtxt(‘a.csv’,delimiter = ‘,’)
- CSV文件的局限性
- CSV只能有效存储一维和二维数组
- np.savetxt() np.loadtxt() 只能有效存取一维和二维数组
访问多维数据
- a.tofile(frame,sep=”,format=’%s’)
- 没有维度信息,一一列出元素
- 二进制文件比文本文件占用更少的空间
- np.fromfile(frame,dtype=float,count=-1,sep=”)
- frame:文件,字符串
- dtype:读取的数据类型
- count:读取元素个数,-1表示读入整个文件
- sep:数据分割字符串,如果是空串,写入文件为二进制
NumPy的便捷式文件截取
- np.save(frame,array)或np.savez(fname,array)
- frame:文件名,以.npy为扩展名,压缩扩展名为,npz
- array:数组变量
- np.load(fname)
- fname:文件名,以.npy为扩展名,压缩扩展名为,npz
NumPy的随机数函数子库
- np.random的随机数函数
NumPy的统计函数
NumBy的梯度函数
图像的数组表示
- RGB色彩模式
- 范围:
- 都是0-255
- PIL库
- from PIL import Image
- Image是PIL库中代表一个图像的类(对象)
- 图像是一个由像素组成的二维数组,每个元素是一个RGB值
图像变换
文章出处登录后可见!
已经登录?立即刷新