Python应用实现处理excel数据过程解析


Posted in Python onJune 19, 2020

实现功能

excel表格中有4列数,分别为RMF计算得到的 β,γ,势能面及组态,需要挑选出相同 β 值下势能面最低时的组态。为了减小数据量,先将 β 值保留两位小数。

代码

import xlrd
import xlwt

# read xls file
readfile = xlrd.open_workbook('./beta-gamma-constrain.xlsx')
readsheet = readfile.sheet_by_name('Sheet1')

beta = readsheet.col_values(0)
gamma = readsheet.col_values(1)
energy = readsheet.col_values(2)
config = readsheet.col_values(3)
'''
print(beta)
print(gamma)
print(energy)
print(config)
'''
beta_2f = [round(x, 2) for x in beta]

beta_gamma = dict(zip(beta_2f, gamma))
beta_energy = dict(zip(beta_2f, energy))
beta_config = dict(zip(beta_2f, config))

for i in range(0, len(beta_2f)):
  if energy[i] < beta_energy[beta_2f[i]]:
    beta_gamma[beta_2f[i]] = gamma[i]
    beta_energy[beta_2f[i]] = energy[i]
    beta_config[beta_2f[i]] = config[i]
  else:
    continue

print(beta_gamma)
print(beta_energy)
print(beta_config)

# write xls file
write_excl = xlwt.Workbook(encoding='utf-8')
excl_sheet = write_excl.add_sheet('Sheet1')

j = 0
for key, value in beta_gamma.items():
  excl_sheet.write(j, 0, key)
  excl_sheet.write(j, 1, value)
  excl_sheet.write(j, 2, beta_energy[key])
  excl_sheet.write(j, 3, beta_config[key])
  j = j+1

write_excl.save("xx.xls")

用到的库

xlrd,读取 excel 文件的库,可以读取 xls 和 xlsx 文件。

xlwt,写入 excel 文件的库,只能写成 xls 文件。

思路

将数据按列读出,写入 4 个列表,再组装为字典。由于字典中的 key 值是唯一的,因此该过程只是得到了 β-势能面的字典,但势能面的值不是最小的,需要遍历判断再赋值。最后将结果写入新的 excel 表格。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
将Django框架和遗留的Web应用集成的方法
Jul 24 Python
利用python获取某年中每个月的第一天和最后一天
Dec 15 Python
python 爬虫出现403禁止访问错误详解
Mar 11 Python
浅谈python socket函数中,send与sendall的区别与使用方法
May 09 Python
Python学习pygal绘制线图代码分享
Dec 09 Python
Python SSL证书验证问题解决方案
Jan 13 Python
Python内建序列通用操作6种实现方法
Mar 26 Python
python 删除excel表格重复行,数据预处理操作
Jul 06 Python
python,Java,JavaScript实现indexOf
Sep 09 Python
用python实现一个简单的验证码
Dec 09 Python
Python 数据分析之逐块读取文本的实现
Dec 14 Python
浅谈Python从全局与局部变量到装饰器的相关知识
Jun 21 Python
在tensorflow以及keras安装目录查询操作(windows下)
Jun 19 #Python
Scrapy框架介绍之Puppeteer渲染的使用
Jun 19 #Python
Python内置方法和属性应用:反射和单例(推荐)
Jun 19 #Python
Python应用实现双指数函数及拟合代码实例
Jun 19 #Python
PyQT5 实现快捷键复制表格数据的方法示例
Jun 19 #Python
如何在keras中添加自己的优化器(如adam等)
Jun 19 #Python
详解pyinstaller生成exe的闪退问题解决方案
Jun 19 #Python
You might like
php中对xml读取的相关函数的介绍一
2008/06/05 PHP
深入掌握include_once与require_once的区别
2013/06/17 PHP
PHP图片处理之图片背景、画布操作
2014/11/19 PHP
Centos6.5和Centos7 php环境搭建方法
2016/05/27 PHP
PHP获取当前日期及本周一是几月几号的方法
2017/03/28 PHP
js解决弹窗问题实现班级跳转DIV示例
2014/01/06 Javascript
移动节点的jquery代码
2014/01/13 Javascript
解决jquery插件:TypeError:$.browser is undefined报错的方法
2015/11/21 Javascript
JS键盘版计算器的制作方法
2016/12/03 Javascript
Vue.js如何实现路由懒加载浅析
2017/08/14 Javascript
JavaScript中立即执行函数实例详解
2017/11/04 Javascript
axios进阶实践之利用最优雅的方式写ajax请求
2017/12/20 Javascript
JS定义函数的几种常用方法小结
2019/05/23 Javascript
用Python的Django框架编写从Google Adsense中获得报表的应用
2015/04/17 Python
pymongo给mongodb创建索引的简单实现方法
2015/05/06 Python
Python3.6基于正则实现的计算器示例【无优化简单注释版】
2018/06/14 Python
利用python如何在前程无忧高效投递简历
2019/05/07 Python
Python分支语句与循环语句应用实例分析
2019/05/07 Python
Python Web版语音合成实例详解
2019/07/16 Python
Python 爬取淘宝商品信息栏目的实现
2021/02/06 Python
Application Cache未缓存文件无法访问无法加载问题
2014/05/31 HTML / CSS
Html5踩坑记之mandMobile使用小记
2020/04/02 HTML / CSS
购买原创艺术品:Zatista
2019/11/09 全球购物
Big Green Smile法国:领先的英国有机和天然产品在线商店
2021/01/02 全球购物
Otiumberg官网:英国半精致珠宝品牌
2021/01/16 全球购物
运动会通讯稿100字
2014/01/31 职场文书
会计专业个人自我鉴定
2014/03/21 职场文书
党员学习群众路线心得体会
2014/11/04 职场文书
会议欢迎词范文
2015/01/27 职场文书
班组长如何制订适合本班组的工作计划?
2019/07/10 职场文书
python爬不同图片分别保存在不同文件夹中的实现
2021/04/02 Python
python基础学习之生成器与文件系统知识总结
2021/05/25 Python
简单总结SpringMVC拦截器的使用方法
2021/06/28 Java/Android
总结Java对象被序列化的两种方法
2021/06/30 Java/Android
使用 CSS 轻松实现一些高频出现的奇形怪状按钮
2021/12/06 HTML / CSS
Docker容器harbor私有仓库部署和管理
2022/08/05 Servers