numpy输入与输出
Numpy能够读写磁盘上的二进制数据和文本数据。
二进制
二进制文件类型:npy/npz
npy
默认情况下,数组是以未压缩的原始二进制格式保存在扩展名为.npy的文件中。
code:
import numpy as np
a = np.arange(5)
np.save('test.npy',a)
b = np.load('test.npy')
print(b)
输出:
[0 1 2 3 4]
npz
以压缩打包的方式存储文件,可以用压缩软件解压。
多个数组保存到一个文件中的话,可以使用numpy.savez函数。savez函数的第一个参数是文件名,其后的参数都是需要保存的数组.
读取npz还是用np.load().
对于上述的save()/savez()/load(),都会自动处理数据的元信息:ndim、dtype、shape。
一些numpy的函数介绍:
np.random产生随机数的函数
- np.random.seed()
功能:随机数种子,每次都按照默认的序列生成随机数。
这个是打印不了的,像一个标记一样,只要seed里面的数值一样,生成随机数的规则就一样。 - np.random.uniform(low,high,size):
功能:均匀分布随机数。
从一个均匀分布[low, high)中随机采样。low默认为0,high默认为1。size为输出样本数,为int或元组。返回类型:ndarray。 - numpy.linspace(start,stop,num=50,endpoint=True,retstep=False,dtype=None)
功能:等差数列创建函数。
参数:
start-序列初始值;
stop-序列终止值;
num-样本数量;
endpoint-bool类型。可选参数,默认值为True,这时stop就是最后的样本。为False时,不包含stop的值。
retstep-bool类型。可选参数,默认值为True,这时返回值是(samples,step),前面的是数组,后面是步长。
dtype-表示输出的数组的数据类型,如果没有给出就从其他输入中推断输出的类型。
>>> a,b = np.linspace(0, np.pi,5,True,True)
>>> print(a,b)
[0. 0.78539816 1.57079633 2.35619449 3.14159265] 0.7853981633974483
上面的程序就是指在0到PI之间等差的五个数,包含PI。最后的0.7853981633974483为步长。