Python Pandas批量读取csv文件到dataframe的方法
python pandas批量读取csv文件到dataframe
首先使用glob.glob获得文件路径。然后定义一个列表,读取文件后再使用concat合并读取到的数据。
#读取数据 import pandas as pd import numpy as np import glob,os path=r'e:\tj\month\fx1806' file=glob.glob(os.path.join(path, "zq*.xls")) print(file) dl= [] for f in file: dl.append(pd.read_excel(f,header=[0,1],index_col=none)) df=pd.concat(dl)
下面看下python使用pandas处理csv文件的方法
python中有许多方便的库可以用来进行数据处理,尤其是numpy和pandas,再搭配matplot画图专用模块,功能十分强大。
csv(comma-separated values)格式的文件是指以纯文本形式存储的表格数据,这意味着不能简单的使用excel表格工具进行处理,而且excel表格处理的数据量十分有限,而使用pandas来处理数据量巨大的csv文件就容易的多了。
我用到的是自己用其他硬件工具抓取得数据,硬件环境是在linux平台上搭建的,当时数据是在运行脚本后直接输出在terminal里的,数据量十分庞大,为了保存获得的数据,在linux下使用了数据流重定向,把数据全部保存到了文本文件中,形成了一个本地csv文件。
pandas读取本地csv文件并设置dataframe(数据格式)
import pandas as pd import numpy as np df=pd.read_csv('filename',header=none,sep=' ') #filename可以直接从盘符开始,标明每一级的文件夹直到csv文件,header=none表示头部为空,sep=' '表示数据间使用空格作为分隔符,如果分隔符是逗号,只需换成 ‘,'即可。 print df.head() print df.tail() #作为示例,输出csv文件的前5行和最后5行,这是pandas默认的输出5行,可以根据需要自己设定输出几行的值
图片中显示了我本地数据的前5行与最后5行,最前面一列没有标号的是行号,数据一共有13列,标号从0到12,一行显示不完全,在第9列以后换了行,并且用反斜杠“\”标注了出来。
2017年4月28日更新
使用pandas直接读取本地的csv文件后,csv文件的列索引默认为从0开始的数字,重定义列索引的语句如下:
import pandas as pd import numpy as np df=pd.read_csv('filename',header=none,sep=' ',names=["week",'month','date','time','year','name1','freq1','name2','freq2','name3','data1','name4','data2']) print df1234
此时打印出的文件信息如下,列索引已经被重命名:
总结
以上所述是小编给大家介绍的python pandas批量读取csv文件到dataframe的方法,希望对大家有所帮助
上一篇: 简单说明Python中的装饰器的用法
下一篇: 详解Python中列表和元祖的使用方法
推荐阅读
-
python读取几个G的csv文件方法
-
python+opencv 读取文件夹下的所有图像并批量保存ROI的方法
-
使用pandas模块读取csv文件和excel表格,并用matplotlib画图的方法
-
利用Pandas读取文件路径或文件名称包含中文的csv文件方法
-
使用python的pandas库读取csv文件保存至mysql数据库
-
python读取json文件并将数据插入到mongodb的方法
-
使用pandas read_table读取csv文件的方法
-
python+opencv 读取文件夹下的所有图像并批量保存ROI的方法
-
python 利用pandas将arff文件转csv文件的方法
-
python 读取.csv文件数据到数组(矩阵)的实例讲解