Python Pandas批量读取csv文件到dataframe的方法

yipeiwu_com6年前Python基础

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

此时打印出的文件信息如下,列索引已经被重命名:

重定义CSV文件列名

总结

以上所述是小编给大家介绍的Python Pandas批量读取csv文件到dataframe的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

在Python中处理字符串之isdecimal()方法的使用

 isdecimal()方法检查字符串是否仅由十进制字符组成。此方法只存在于unicode对象。 注意:要定义一个字符串为Unicode,只需前缀分配'u'左引号。以下是示例。...

Python中利用Scipy包的SIFT方法进行图片识别的实例教程

Python中利用Scipy包的SIFT方法进行图片识别的实例教程

scipy scipy包包含致力于科学计算中常见问题的各个工具箱。它的不同子模块相应于不同的应用。像插值,积分,优化,图像处理,,特殊函数等等。 scipy可以与其它标准科学计算程序库进...

Django 静态文件配置过程详解

静态文件配置 概述: 静态文件交由Web服务器处理,Django本身不处理静态文件。简单的处理逻辑如下(以nginx为例): URI请求 --> 按照Web服务器里面的配置规...

Python编程之变量赋值操作实例分析

本文实例讲述了Python编程之变量赋值操作。分享给大家供大家参考,具体如下: #coding=utf8 ''''' Python中主要通过等号(=)进行赋值。 Python中的赋值...

深入浅出学习python装饰器

深入浅出学习python装饰器

之前就了解到了装饰器, 但是就会点皮毛, 而且对其调用方式感到迷茫,正好现在的项目我想优化,就想到了用装饰器, 因此深入研究了下装饰器. 先看下代码: import time #...