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 相关文章推荐
Python中的文件和目录操作实现代码
Mar 13 Python
举例讲解Python设计模式编程中的访问者与观察者模式
Jan 26 Python
Python使用defaultdict读取文件各列的方法
May 11 Python
Python实现简单的HttpServer服务器示例
Sep 25 Python
关于Tensorflow中的tf.train.batch函数的使用
Apr 24 Python
详解Django中类视图使用装饰器的方式
Aug 12 Python
Python logging模块用法示例
Aug 28 Python
Python3对称加密算法AES、DES3实例详解
Dec 06 Python
详解python中递归函数
Apr 16 Python
python2与python3爬虫中get与post对比解析
Sep 18 Python
python代码xml转txt实例
Mar 10 Python
详解Python 实现 ZeroMQ 的三种基本工作模式
Mar 24 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
基于ThinkPHP实现批量删除
2015/12/18 PHP
PHP给文字内容中的关键字进行套红处理
2016/04/12 PHP
9个javascript语法高亮插件 推荐
2009/07/18 Javascript
js获取图片大小的函数代码
2011/09/20 Javascript
JavaScript eval() 函数介绍及应用示例
2014/07/29 Javascript
JavaScript字符串对象replace方法实例(用于字符串替换或正则替换)
2014/10/16 Javascript
Bootstrap每天必学之进度条
2015/11/30 Javascript
JavaScript+html5 canvas绘制的小人效果
2016/01/27 Javascript
js利用appendChild对标签进行排序的实现方法
2016/10/16 Javascript
原生的强大DOM选择器querySelector介绍
2016/12/21 Javascript
React组件的三种写法总结
2017/01/12 Javascript
Node.js安装配置图文教程
2017/05/10 Javascript
通过学习bootstrop导航条学会修改bootstrop颜色基调
2017/06/11 Javascript
JavaScript条件判断_动力节点Java学院整理
2017/06/26 Javascript
小程序日历控件使用方法详解
2018/12/29 Javascript
Angular2实现的秒表及改良版示例
2019/05/10 Javascript
[02:38]DOTA2超级联赛专访Loda 认为IG世界最强
2013/05/27 DOTA
Python中用Ctrl+C终止多线程程序的问题解决
2013/03/30 Python
python 网络编程常用代码段
2016/08/28 Python
python自动化脚本安装指定版本python环境详解
2017/09/14 Python
对python实现合并两个排序链表的方法详解
2019/01/23 Python
python函数不定长参数使用方法解析
2019/12/14 Python
python实现AdaBoost算法的示例
2020/10/03 Python
跨域修改iframe页面内容详解
2019/10/31 HTML / CSS
白兰氏健康Mall:BRAND’S
2017/11/13 全球购物
台湾演唱会订票网站:StubHub台湾
2019/06/11 全球购物
远程学习的教学用品和家庭学习资源:Really Good Stuff
2020/04/27 全球购物
低碳环保演讲稿
2014/08/28 职场文书
学生穿着不得体检讨书
2014/10/12 职场文书
公务员政审材料
2014/12/23 职场文书
蜗居观后感
2015/06/11 职场文书
贫困证明怎么写
2015/06/16 职场文书
据Python爬虫不靠谱预测可知今年双十一销售额将超过6000亿元
2021/11/11 Python
OpenCV项目实践之停车场车位实时检测
2022/04/11 Python
Win10/Win11 任务栏替换成经典样式
2022/04/19 数码科技
JavaScript实现一键复制内容剪贴板
2022/07/23 Javascript