找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 5432|回复: 3

[求助] openpyxl如何将excel单元格的文本格式转换为数字?

0

主题

0

帖子

0

积分

贫民

积分
0
fengyun33353 发表于 2021-8-30 00:47:11 | 显示全部楼层 |阅读模式
1威望
本帖最后由 fengyun33353 于 2021-8-30 00:55 编辑

我把.csv转换成.xlsx,可【D列】百分比全变成以文本形式存储的数字了,问怎么转换成数字,我用这段代码可是不好用还是不能计算统计,求大神帮忙帮我写一下代码from openpyxl import load_workbook

wb = load_workbook(r'C:\Users\administered\Desktop\test\期货测试\RU\品种12个月测试\测试单表\橡胶主连_自30分钟_KDJ 23%1.csv.xlsx')
# 获取活动工作表
ws = wb.active
for cell in ws['D'] :
    cell.number_format ='0.00%'
wb.save(r'C:\Users\administered\Desktop\test\期货测试\RU\品种12个月测试\测试单表\橡胶主连_自30分钟_KDJ 23%2.csv.xlsx')




wx_camera_1630235897208.jpg
回复

使用道具 举报

0

主题

14

帖子

14

积分

贫民

积分
14
wjb986555360 发表于 2021-9-21 13:08:24 | 显示全部楼层
数字文本转成float格式就可以了
回复

使用道具 举报

0

主题

14

帖子

14

积分

贫民

积分
14
Jack315 发表于 2021-9-21 15:27:26 | 显示全部楼层
>>> s = '65.54%'
>>> s[:-1]
'65.54'
>>> float(s[:-1])/100
0.6554000000000001
>>>
回复

使用道具 举报

0

主题

956

帖子

956

积分

圣骑士

积分
956
sheeboard 发表于 2021-9-21 15:40:00 | 显示全部楼层
本帖最后由 sheeboard 于 2021-9-21 15:49 编辑

def p2f(x):
    return float(x.strip('%'))/100
然后用pandas
df['target']=df[''target].apply(p2f)

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表