CSV文件的存取

以下代码在spyder的IPython中测试

一、np.savetxt()将数组a中的元素保存为csv格式 :

np.savetxt(frame,array,fmt='%.18e',delimiter=None)

1  import numpy as np
2  a=np.arange(10).reshape(2,5)
4 a
6 array([[0, 1, 2, 3, 4], 7 [5, 6, 7, 8, 9]]) 9 np.savetxt('a.csv',a,fmt='%d',delimiter=',')#fmt定义写入文件的格式,例如:%d 以整数存储;%.2f 以两位浮点数存储
 

二、np.loadtxt()将CSV文件中的数据读入到numpy中的一个数组中:

np.loadtxt(frame,dtype=np.float,delimiter=None,unpack=False)

1 b=np.loadtxt('a.csv',delimiter=',')
3 b5 array([[0., 1., 2., 3., 4.],
6        [5., 6., 7., 8., 9.]])

可以观察到上面生成的数组b的元素类型默认的是浮点数

可以通过dtype设定生成的数组元素类型,如下:

1 c=np.loadtxt('a.csv',dtype=np.int,delimiter=',')
2 
3 c
4 Out[15]: 
5 array([[0, 1, 2, 3, 4],
6        [5, 6, 7, 8, 9]])

可以观察到上面生成的数组C的元素类型为整数。

三、csv文件的局限性:

csv文件只能有效存储一维和二维数组。即:np.savetxt()和  np.loadtxt()只能有效存取一维和二维数组。

p.s:明天清明假期,准备认真体会一下春天的味道。

扫描二维码关注公众号,回复: 5777041 查看本文章

猜你喜欢

转载自www.cnblogs.com/yippee123/p/10655952.html