数据可视化学习笔记之Numpy3

文章目录

  • 数据存取
    • 数据的CSV文件存取
    • 任意维度数据存取
    • Numpy的便捷文件存取

数据存取

数据的CSV文件存取

CSV (Comma‐Separated Value, 逗号分隔值)
CSV是一种常见的文件格式,用来存储批量数据

  1. 保存文件
np.savetxt(frame, array, fmt='%.18e', delimiter=None)
  • frame: 文件、字符串或产生器,可以是.gz或.bz2的压缩文件
  • array : 存入文件的数组
  • fmt : 写入文件的格式,例如:%d %.2f %.18e
  • delimiter : 分割字符串,默认是任何空格

示例:

In [42]: a = np.arange(99).reshape(9,11)

In [43]: np.savetxt('a.csv',a,fmt='%d',delimiter=',')

数据可视化学习笔记之Numpy3_第1张图片
2. 载入文件

np.loadtxt(frame, dtype=np.float, delimiter=None, unpack=False)
  • frame : 文件、字符串或产生器,可以是.gz或.bz2的压缩文件
  • dtype : 数据类型,可选
  • delimiter : 分割字符串,默认是任何空格
  • unpack : 如果True,读入属性将分别写入不同变量

示例:

In [48]: np.loadtxt('a.csv',dtype=np.int,delimiter=',')
Out[48]:
array([[ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10],
       [11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21],
       [22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32],
       [33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43],
       [44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54],
       [55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65],
       [66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76],
       [77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87],
       [88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98]])

np.savetxt() ,np.loadtxt()只能有效存取一维二维数组

任意维度数据存取

  1. 保存文件
a.tofile(frame, sep='', format='%s')
  • frame : 文件、字符串
  • sep: 数据分割字符串,如果是空串,写入文件为二进制
  • format : 写入数据的格式
    示例:
In [49]: a = np.arange(40).reshape((2,5,4))

In [50]: a.tofile('b.dat',sep=',',format='%d')
  1. 载入文件
np.fromfile(frame, dtype=float, count=1, sep='')
  • frame : 文件、字符串
  • dtype : 读取的数据类型
  • count : 读入元素个数,‐1表示读入整个文件
  • sep : 数据分割字符串,如果是空串,写入文件为二进制

示例:

In [49]: a = np.arange(40).reshape((2,5,4))

In [50]: a.tofile('b.dat',sep=',',format='%d')

In [51]: np.fromfile('b.dat',dtype=np.int,sep=',').reshape((2,5,4))
Out[51]:
array([[[ 0,  1,  2,  3],
        [ 4,  5,  6,  7],
        [ 8,  9, 10, 11],
        [12, 13, 14, 15],
        [16, 17, 18, 19]],

       [[20, 21, 22, 23],
        [24, 25, 26, 27],
        [28, 29, 30, 31],
        [32, 33, 34, 35],
        [36, 37, 38, 39]]])

该方法需要读取时知道存入文件时数组的维度和元素类型

Numpy的便捷文件存取

np.save(fname, array) 

np.savez(fname, array)

fname : 文件名,以.npy为扩展名,压缩扩展名为.npz
array : 数组变量

np.load(fname)

fname : 文件名,以.npy为扩展名,压缩扩展名为.npz

示例:

In [52]: a = np.arange(12).reshape((2,2,3))

In [54]: np.save('c.npy',a)

In [55]: np.load('c.npy')
Out[55]:
array([[[ 0,  1,  2],
        [ 3,  4,  5]],

       [[ 6,  7,  8],
        [ 9, 10, 11]]])

你可能感兴趣的:(Python学习笔记)