CSV文件存取(逗号分隔值)
- 最简便的方法(基于numpy自定义的文件格式),适于程序中间步骤
函数 | 参数说明 |
---|---|
np.save(fname, array) | fname:文件名,array:数组变量 |
np.savez(fname, array) | 分别以.npy为扩展名,压缩扩展名为.npz |
np.load(flame) | fname : 文件名,以.npy为扩展名,压缩扩展名为.npz |
- 存csv
1 | np.savetxt(frame,array,fmt='%.18e',delimiter=None) |
参数 | 功能 |
---|---|
frame | (文件名)文件、字符串或产生器,可以是.gz或.bz2的压缩文件 |
array | 存入文件的数组 |
fmt | 写入文件的格式,例如:%d %.2f %.18e |
delimiter | 分割字符串,默认是任何空格 |
1 | np.savetxt('a.csv',a,fmt = '%d', delimiter = ',') |
- 读csv
1 | np.loadtxt(frame, dtype=np.float, delimiter=None, unpack=False) |
参数 | 说明 |
---|---|
frame | (文件名)文件、字符串或产生器,可以是.gz或.bz2的压缩文件 |
dtype | 数据类型,可选 |
delimiter | 分割字符串,默认是任何空格 |
unpack | 如果True,读入属性将分别写入不同变量 |
- 写多维数据
1 | a.tofile(frame, sep='', format='%s') |
参数 | 说明 |
---|---|
frame | (文件名)文件、字符串 |
sep | 数据分割字符串,如果是空串,写入文件为二进制 |
format | 写入数据的格式 |
- 读多维数据
1 | np.fromfile(frame, dtype=float, count=‐1, sep='') |
参数 | 说明 |
---|---|
frame | (文件名)文件、字符串 |
dtype | 读取的数据类型 |
count | 读入元素个数,‐1表示读入整个文件 |
sep | 数据分割字符串,如果是空串,写入文件为二进制 |
Numpy的随机数函数-random字库
函数 | 说明 |
---|---|
rand(d0,d1,..,dn) | 根据d0‐dn创建随机数数组,浮点数,[0,1),均匀分布 |
randn(d0,d1,..,dn) | 根据d0‐dn创建随机数数组,标准正态分布 |
randint(low[,high,shape]) | 根据shape创建随机整数或整数数组,范围是[low, high) |
seed(s) | 随机数种子,s是给定的种子值 |
shuffle(a) | 根据数组a的第0轴进行随排列,改变数组x |
permutation(a) | 同shuffle(a)功能,但不改变数组 |
choice(a[,size,replace,p]) | 从一维数组a中以概率p抽取元素,形成size形状新数组replace表示是否可以重用元素,默认为False |
uniform(low,high,size) | 产生均匀分布的数组,low起始值,high结束值,size形状 |
normal(loc,scale,size) | 产生具有正态分布的数组,loc均值,scale标准差,size形状 |
poisson(lam,size) | 产生具有泊松分布的数组,lam随机事件发生率,size形状 |
Numpy的统计函数
函数 | 说明 |
---|---|
sum(a, axis=None) | 根据给定轴axis计算数组a相关元素之和,axis整数或元组 |
mean(a, axis=None) | 根据给定轴axis计算数组a相关元素的期望,axis整数或元组 |
average(a,axis=None,weights=None) | 根据轴axis计算数组a相关元素的加权平均值 |
std(a, axis=None) | 根据给定轴axis计算数组a相关元素的标准差 |
var(a, axis=None) | 根据给定轴axis计算数组a相关元素的方差 |
min(a) max(a) | 计算数组a中元素的最小值、最大值 |
argmin(a) argmax(a) | 计算数组a中元素最小值、最大值的降一维后下标 |
unravel_index(index, shape) | 根据shape将一维下标index转换成多维下标 |
ptp(a) | 计算数组a中元素最大值与最小值的差 |
median(a) | 计算数组a中元素的中位数(中值) |
np.gradient(f) | 计算数组f中元素的梯度,当f为多维时,返回每个维度梯度 |