python3数据分析—运用xlrd读取xls文件,读取文件中日期显示为浮点数解决办法
python3数据分析—运用xlrd读取xls文件,读取文件中日期显示为浮点数解决办法
文章目录
- 开发工具
- 问题代码
- 问题分析
- 解决代码
- 运行结果
- 总结
开发工具
python版本:Python 3.6.1
python开发工具:JetBrains PyCharm 2018.3.6 x64
第三方库xlrd安装→pip install xlrd -i /
excel测试数据.xls→文件下载地址
(访问密码:8835)
问题代码
import xlrd
from jieba import xrange
from pprint import pprint
filename = 'excel测试数据.xls'
wb = xlrd.open_workbook(filename=filename)
ws = wb.sheet_by_name('Sheet1')
dataset = []
for r in xrange(ws.nrows):
col = []
for c in range(ws.ncols):
col.append(ws.cell(r, c).value)
dataset.append(col)
pprint(dataset)
问题分析
在文件日期格式为yyyy/MM/dd HH:mm:ss,通过python读取文件中日期信息变为了浮点类型的数据,在读取是需要做相应的处理
解决代码
from datetime import datetime
import xlrd
from jieba import xrange
from pprint import pprint
from xlrd import xldate_as_tuple
filename = 'excel测试数据.xls'
wb = xlrd.open_workbook(filename=filename)
ws = wb.sheet_by_name('Sheet1')
dataset = []
for r in xrange(ws.nrows):
col = []
for c in range(ws.ncols):
if ws.cell(r, c).ctype == xlrd.XL_CELL_DATE: # 判断单元格类型是否为日期格式,如果是进行如下操作
data_value = xldate_as_tuple(ws.cell(r, c).value, datemode=0)
col.append(datetime(*data_value).strftime('%Y/%m/%d %H:%M:%S'))
else:
col.append(ws.cell(r, c).value)
dataset.append(col)
pprint(dataset)
运行结果
总结
运用xlrd读取excel文件时,需要注意日期格式的读取;直接读取读出来内容为浮点数,这里需要对单元格类型作日期类型判断,如果是单独处理一下日期,将日期转为我们需要的形式
最新文章
- 盘点2012:软件定义网络风生水起
- 浪潮存储与虚拟服务器连接失败,浪潮
- 栅栏密码(The Rail
- JKD 下载、安装、配置
- 机器学习
- SQL Server密码破解工具
- 什么是NFS服务器
- Messaging短信源码导入AndroidStudio
- 高并发部署策略 多副本服务+nginx均衡负载
- 总结一下使用Emgucv的经验和经历
- 【转帖】Dirichlet Distribution(狄利克雷分布)与Dirichlet Process(狄利克雷过程)原文https:www.datalearner.comblog10514
- JS exports的用法
- 前端MVC设计模式
- Android 强制设置横屏或竖屏
- 升序数组插入数据
- 免杀的N种姿势
- OpenEXR.cpp:37:19: fatal error: ImfIO.h: 没有那个文件或目录