Pandas学习笔记(三)——读取 CSV、TXT文件

pandas是数据分析专用库。从外部读写文件也属于数据处理的一部分。pandas提供了多种I/O API函数。支持多种类型数据的读取。常用的函数如下:

读取函数 写入函数
read_csv    to_csv
read_excel to_excel
read_hdf to_hdf
read_sql to_sql
read_json to_json
read_html to_html
read_stata to_stata
read_clipboard to_clipboard
read_pickle to_pickle
read_msgback to_msgback
read_bbq to_gbq

1.CSV文件。CSV格式:文件的每一行的多个元素是用逗号隔开的。如:myCSV_01.csv


2.直接读取csv.

        pandas读取csv文件默认第一行是标识符,也就是列名。

输入

csvframe=pd.read_csv( "myCSV_01.csv") #读取无表头的csv文件
print(csvframe)

会得到输出

Pandas学习笔记(三)——读取 CSV、TXT文件_第1张图片

第一列0,1,2,3,4为索引序列。White red blue green animal成为了列名

如果CSV文件中不包含列名。如

,则会得到如下输出:


此时。pandas把第一行当做了列名。要解决该问题,只需要添加header =None

csvframe=pd.read_csv( "myCSV_02.csv", header= None) #读取无表头的csv文件

就会得到如下输出

列名变成了0,1,2,3.

我们还可以通过name来修改列名

csvframe=pd.read_csv( "myCSV_02.csv", names=[ 'white', 'red', 'blue', 'green', 'animal']) #读取文件,并自定义每列的名称

输出为


4.对TXT文件进行操作

TXT文件大家都很熟悉了,就不介绍了。TXT的用法和CSV文件大致相同。主要区别是:CSV格式中,每个数据之间通过逗号分隔。而TXT中数据的分隔可以是逗号,也可以是空格,更可以是字母。

现有如下的TXT文件:

如果对我来说,只有数字才是我需要数据,字母为分隔符,那么输入如下指令:

csvframe=pd.read_table( "ch05_05.txt", sep= '\D*', header= None) #读取txt文件的数字部分,无表头

sep的作用为,排除。sep=','表示去除逗号,按照逗号对数据进行分割。sep='\D*'表示去除非数字字符,按照非数字字符对数据进行分割。因此,此时的输出为

此外,还有一个常使用的选项:skiprows.它的功能为排除某一行。要注意的是:排除前五行是skiprows=5.排除第五行是skiprows=[5].



你可能感兴趣的:(Python)