Numpy 读写文件

Numpy 读写文件,本章主要介绍Numpy读写二进制文件和读写文本格式的数据,Numpy提供了几个函数,数据分析师可以用其把结果保存到文本或二进制文件中,同样,Numpy还提供了从文件中读取数据并将其转换为数组的方法。

学习本章内容,可以先了解极客教程NumPy 创建数组,极客教程Pandas 数据读取与写入介绍了类似文本文件,数据库数据的读写操作。

Numpy 读写二进制文件

Numpy 的save()方法以二进制格式保存数据,load()方法则从二进制文件读取数据。

假如你有一个数组保存,例如数据分析过程产生的结果,调用save()函数即可,参数有两个:要保存到的文件名和要保存的数组,其中文件名中的.np扩展名系统会自动添加。

import numpy as np

data = np.array([[1,2,3],[2,3,4],[3,4,5],[4,5,6]])
print(data)
np.save("saved_data", data)

输出结果如下:
Numpy 读写文件

若要恢复存储在.npy文件中的数据,可以使用load()函数,用文件名作为参数,这次记得添加.npy扩展名。

import numpy as np

load_data = np.load("saved_data.npy")
print(load_data)

输出结果如下:
Numpy 读写文件

Numpy 读写文本格式的数据

考虑到文本格式的文件不必使用应用也能用处理,因此一般都会将数据存储为文本格式,而不是二进制格式。拿几行CSV格式的数据为例,如下所示,文件data.csv的内容如下:
Numpy 读写文件

Numpy的genfromtxt()函数可以从文本文件中读取数据并将其插入数组中,通常而言,这个函数接收三个参数:存放数据的文件名、用于分隔值的字符和是否含有列标题。如下所示:

import numpy as np

data = np.genfromtxt('data.csv', delimiter=',',skip_header=True)
print(data)

输出结果如下:
Numpy 读写文件

这个函数包含两层隐式循环:第一层循环每次读取一行,第二层循环将每一行的多个值分开后,再对这些值进行转化,依次插入所创建的元素。它还能够处理文件中的缺失数据

如下所示,文件data2.csv的内容如下:
Numpy 读写文件

运行如下命令,观察genfromtxt()是怎样把内容为空的项填充为nan值的。

import numpy as np

data = np.genfromtxt('data2.csv', delimiter=',',skip_header=True)
print(data)

输出结果如下:
Numpy 读写文件

可以按照传统方法,使用数组索引按行获取数据,如下所示:

import numpy as np

data = np.genfromtxt('data2.csv', delimiter=',',skip_header=True)
print(data[0])

输出结果如下:
Numpy 读写文件

推荐知识点

极客教程Pandas 读写csv
极客教程Pandas 读写excel
极客教程Pandas 读取txt

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程