Python可以很好地完成预处理任务,本文对python常用的numpy & pandas做一些总结。
1.文本读写
python本身就带有open()函数,配合readline()/write()函数可以完成读写功能。但注意pandas也有很强大的读写能力,包括函数read_csv()
to_csyQread_excelQto_excel()。
# 1. 打开⽂件
f = open('test.txt', 'w')
# 2.⽂件写⼊
f.write('hello world')
# 3. 关闭⽂件
f.close()
这里提一点: read_csv)函数可以指定index.column name,encoding type,header等等。作者曾经遇到过一个比较strange的问
题, read_csv()与read_excel)的不同。比如,读入的第一列是c1.c2.c..cn。但是read_csv)的cl前面却带了一个未知符号,即显示成了`c1。当时调了半天都没有明白这个`是怎么产生的,不知道哪位大神能够解答。最后无奈用read_excel()才解决。
python还有一个叫codecs的模块,可以很好的解决decode与encode的问题,它可以在读入时就选择相应的coding方式。2.数据处理
这一部分要说的内容就太多了,先来简单区分一下numpy和pandas。简单说, pandas是基于numpy的, numpy可以定义array和dataframe,pandas中可以定义dataframe和series。(可能不是很准确)
之前提到的文本读写, pandas可以直接将内容读成dataframe或series的形式。同时dataframe和series也可以由list或dictionary生成。这里我的理解是dictionary就是带有列名的li