请问在Pandas用read_excel函数读取数据

2020-06-07 财经 195阅读

利用Python的pandas数据结构来读取excel表格的数据,部分代码如下:

#-*- coding:utf-8 -*-

import pandas as pd

import matplotlib.pyplot as plt

catering_data="catering_sale.xls"

data=pd.read_excel(catering_data,index_col=u'日期')

#读取数据,指定"日期"列为索引列;

大多数书上都是这样写的,但是在Python2.7上运行时出现错误。(没有在Python3.x版本试过)

出现了如下问题:

这里写图片描述

使用help(pd.read_excel)发现参数中有必选参数sheetname,加入到函数中,代码如下:

#-*- coding:utf-8 -*-

import pandas as pd

import matplotlib.pyplot as plt

catering_data="catering_sale.xls"

data=pd.read_excel(catering_data,sheetname=0,index_col=u'日期')

运行成功。

sheetname=0 的意思是:读取xls文件中的第一个表格。(假设文件中有很多个表格)

另外,也可以将文件转换成csv格式,就不需要这个参数了。代码如下:

catering_data="catering_sale.csv"

data=pd.read_csv(catering_data)

1、读取txt数据

In [1]: import pandas as pd

In [2]: mydata_txt = pd.read_csv('C:\\test_code.txt',sep = '\t',encoding = 'utf-8')

对于中文的文本文件常容易因为编码的问题而读取失败,正如上图所示。遇到这样的编码问题该如何处置呢?解决办法有两种情况:

1)当原始文件txt或csv的数据不是uft8格式时,需要另存为utf8格式编码;

2)如果原始的数据文件就是uft8格式,为了正常读入,需要将read_csv函数的参数encoding设置为utf-8

将原始数据另存为utf8格式的数据,重新读入txt数据

In [3]: mydata_txt = pd.read_csv('C:\\test.txt',sep = '\t',encoding = 'utf-8')

In [4]: mydata_txt

很顺利,txt文本文件数据就这样进入了Python的口袋里了。

2、读取csv数据

csv文本文件是非常常用的一种数据存储格式,而且其存储量要比Excel电子表格大很多,下面我们就来看看如何利用Python读取csv格式的数据文件:

In [5]: mydata_csv = pd.read_csv('C:\\test.csv',sep = ',',encoding = 'utf-8')

In [6]: mydata_csv

如果你善于总结的话,你会发现,txt文件和csv文件均可以通过pandas模块中的read_csv函数进行读取。该函数有20多个参数,类似于R中的read.table函数,如果需要查看具体的参数详情,可以查看帮助文档:help(pandas.read_csv)

声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com