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脚本实现xls(xlsx)转成csv
Apr 10 Python
python3中dict(字典)的使用方法示例
Mar 22 Python
Python框架Flask的基本数据库操作方法分析
Jul 13 Python
对python借助百度云API对评论进行观点抽取的方法详解
Feb 21 Python
基于Python+Appium实现京东双十一自动领金币功能
Oct 31 Python
Django xadmin开启搜索功能的实现
Nov 15 Python
Tensorflow轻松实现XOR运算的方式
Feb 03 Python
python导入库的具体方法
Jun 18 Python
Python中猜拳游戏与猜筛子游戏的实现方法
Sep 04 Python
python中scrapy处理项目数据的实例分析
Nov 22 Python
python 窃取摄像头照片的实现示例
Jan 08 Python
基于Python的EasyGUI学习实践
May 07 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版微信公众平台开发之验证步骤实例详解
2016/09/23 PHP
PHP编程快速实现数组去重的方法详解
2017/07/22 PHP
php微信公众号开发之音乐信息
2018/10/20 PHP
PHP读取目录树的实现方法分析
2019/03/22 PHP
javascript实现二分查找法实现代码
2007/11/12 Javascript
JQuery中阻止事件冒泡几种方式及其区别介绍
2014/01/15 Javascript
删除条目时弹出的确认对话框
2014/06/05 Javascript
jQuery中extend函数的实现原理详解
2015/02/03 Javascript
JavaScript对象学习小结
2015/09/02 Javascript
javascript实现动态统计图开发实例
2015/11/21 Javascript
JavaScript html5 canvas实现图片上画超链接
2017/10/20 Javascript
Bootstrap实现翻页效果
2017/11/27 Javascript
jquery实现侧边栏左右伸缩效果的示例
2017/12/19 jQuery
vue使用axios时关于this的指向问题详解
2017/12/22 Javascript
vue-router的HTML5 History 模式设置
2018/09/08 Javascript
详解关于Vue版本不匹配问题(Vue packages version mismatch)
2018/09/17 Javascript
vue中datepicker的使用教程实例代码详解
2019/07/08 Javascript
微信小程序进入广告实现代码实例
2019/09/19 Javascript
基于JavaScript实现表格隔行换色
2020/05/08 Javascript
Python学习笔记之变量、自定义函数用法示例
2019/05/28 Python
pyqt5实现按钮添加背景图片以及背景图片的切换方法
2019/06/13 Python
详解python调用cmd命令三种方法
2019/07/08 Python
Python改变对象的字符串显示的方法
2020/08/01 Python
使用Python Tkinter实现剪刀石头布小游戏功能
2020/10/23 Python
如何使用python-opencv批量生成带噪点噪线的数字验证码
2020/12/21 Python
Html5之webcoekt播放JPEG图片流
2020/09/22 HTML / CSS
某/etc/fstab文件中的某行如下: /dev/had5 /mnt/dosdata msdos defaults,usrquota 1 2 请解释其含义
2013/04/11 面试题
平安建设实施方案
2014/03/19 职场文书
个人债务授权委托书
2014/10/17 职场文书
年度考核登记表个人总结
2015/03/06 职场文书
2015年幼儿教师个人工作总结
2015/05/20 职场文书
2015年妇委会工作总结
2015/05/22 职场文书
职场新人刚入职工作总结该怎么写?
2019/05/15 职场文书
MySQL 8.0 之不可见列的基本操作
2021/05/20 MySQL
OpenCV全景图像拼接的实现示例
2021/06/05 Python
Java Lambda表达式常用的函数式接口
2022/04/07 Java/Android