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文件时,需要注意日期格式的读取;直接读取读出来内容为浮点数,这里需要对单元格类型作日期类型判断,如果是单独处理一下日期,将日期转为我们需要的形式
最新文章
- 如何理解AQS
- parameterType和@Param注解用法
- 在Linux中安装JKD(详细教学)
- JKD+Tomcat+Eclipse基础配置
- 一些安全软件
- python 将 csv转excel (.xls和.xlsx)的几种方式
- Java后端面试
- Java中如果被除数是零时的异常处理
- Firefly
- PX4模块设计之四十四: bmp280模块
- NFS服务器的配置与管理
- 图解法求最优解的例题
- 系统测试常见类型及说明
- 请描述你对测试的了解, 内容可以涉及测试流程, 测试类型, 测试方法, 测试工具等。
- 数电基础知识目录
- 大班韵律机器人视频
- 《漫步》flash动画制作全记录五
- 【C++】结构体嵌套结构体
- Android系统应用图标显示未读消息数(BadgeNumber) 桌面app图标的角标显示
- H.265网页播放器EasyPlayer获取视频流正常,但是播放出现黑屏是什么原因?