txt 文本数据的读写
对于 txt 文本数据,Python 中的内置函数 open()
和 write()
就可以实现读取或者写入操作。
- file: 文件路径(相对或者绝对路径)。
- mode: 文件打开模式。
- encoding: 编码格式,一般使用 utf-8。
其中,mode 决定了打开文件的模式,也就是限定了可以对文件做什么样的操作,比如只读,写入,追加等,这个参数是非强制的,默认文件访问模式为只读 ®,以下是常用的模式:
- r : 读取文件,若文件不存在则会报错。
- w: 写入文件,若文件不存在则会先创建再写入,若存在则会覆盖原文件。
- a : 写入文件,若文件不存在则会先创建再写入,若存在不会覆盖原文件,而是在文件中继续写入内容。
- rb, wb:分别与 r, w 类似,但用于读写二进制文件。
- r+ : 可读、可写,若文件不存在会报错,在写操作时会覆盖原文件。
- w+ : 可读,可写,文件不存在先创建,若存在会覆盖。
- a+ :可读、可写,文件不存在先创建,若不存在不会覆盖,在文件中继续写入内容。
三种读取方式:
readlines()
:每次按行读取整个文件内容,将读取到的内容放到一个列表中,返回 list 类型。read()
:读取整个文件,将文件内容放到一个 str 类型的变量中,但是,如果文件非常大,尤其是大于内存时,无法使用read()
方法。readline()
:每次只读取文件的一行,即读取到的一行内容放到一个字符串变量中,返回 str 类型。可以在文件过大,内存不够时使用。
CSV 及 Excel 文本数据的读写
对于 CSV 类型的文件,可调用 Pandas 中的 to_csv()
以及 read_csv()
函数,轻松实现写入或者读取。
对于 Excel 文件,调用 Pandas 中的 to_excel()
以及 read_excel()
函数,轻松实现写入或者读取。如果我们操作的对象是以 .xlsx 为后缀的 Excel 文件,还需要安装库 openpyxl,线上环境已经预装了 openpyxl。
DataFrame 操作
转换为 DataFrame 形式之后,需要进行一系列的数据处理操作,比如获取某行某列,根据条件获取部分数据,进行数据可视化等等。接下来是一些常见的基于 DataFrame 的操作。
- 使用
loc[]
可以获取具有指定行和列名称的数据。 - 根据
iloc[]
获取某一行。 - 直接应用 DataFrame 中的
plot()
函数可以对数值类型的列进行画图。
数据规模太大
有时候在数据预处理过程中会遇到大型文件,如果文件太大,无法直接保存或处理,则可以采用以下几种方法来减少所需的磁盘空间:
- 压缩文件:在保存文件时,添加一个与所需压缩类型相对应的后缀,比如: “.zip”
- 使用精确更低的数据类型:在可以接受不太精确的数据类型的情况下,转换数据类型可以节省大量内存。
- 拆分数据分成块:处理超大型数据集的另一种方法是将数据分成较小的块,然后一次处理一个块,参数 chunksize,默认为 None,可以传入一个整数值指明块的数量。