基于python批量处理dat文件及科学计算方法详解


Posted in Python onMay 08, 2018

摘要:主要介绍一些python的文件读取功能,文件内容修改,文件名后缀更改等操作。

批处理文件功能

import os
path1 = 'C:\\Users\\awake_ljw\\Documents\\python for data analysis\\test1'
path2 = 'C:\\Users\\awake_ljw\\Documents\\python for data analysis\\test2'
filelist = os.listdir(path1)
for files in filelist:
 Olddir = os.path.join(path1,files)
 filename = os.path.splitext(files)[0]
 filetype = os.path.splitext(files)[1]
 print Olddir
 file_test = open(Olddir,'r')
 Newdir = os.path.join(path2,str(filename)+'.csv')
 print Newdir
 file_test2 = open(Newdir,'w')
 for lines in file_test.readlines():
 strdata = ",".join(lines.split('\t'))
 file_test2.write(strdata)
 file_test.close()
 file_test2.close()

os模块是python最基础的模块之一,一般用于文件处理等操作。上面这段代码主要就是将dat文件转化为csv文件,同时保证csv可读。一般txt文件不能通过直接改后缀改变呈csv文件格式,一般会造成文件不可读。csv文件一般通过逗号分隔文本,数据处理起来较得心应手,可以直接改后缀得到xlsx文件,一般excel也可读。

科学计算

matlab作为一门科学计算编程语言,在科学计算的应用实在广泛,包括webread等强大的函数用起来十分顺手,但matlab是商业软件,并不免费。其实,python在科学计算效率或函数库功能包括其绘图功能、图像处理都很强大,(相比matlab,python的调色板更出色)。以下列举一些数据文件读取,绘图的一些基本操作作为参考。

数据提取及绘图

#数据提取
import os 
import pandas as pd
import numpy as np
number = -1;
sudu=np.zeros(5247*5,dtype=float).reshape(5247,5)
for files in filelist1:
 number +=1
 data = pd.read_csv(str(number+1)+'a.csv')
 sudu[:,number]=data['velocity']
 x = data['x']
 y = data['y']
a = sudu[0:5184,0].reshape(81,64)
%matplotlib inline
import matplotlib.pyplot as plt
extent = [np.min(x),np.max(x),np.min(y),np.max(y)]
plt.subplot(231)
u0 = sudu[0:5184,0].reshape(81,64)
plt.imshow(u0,extent=extent,origin='lower')
plt.subplot(232)
u1 = sudu[0:5184,1].reshape(81,64)
plt.imshow(u1,extent=extent,origin='lower')
plt.subplot(233)
u2 = sudu[0:5184,2].reshape(81,64)
plt.imshow(u2,extent=extent,origin='lower')
plt.subplot(234)
u3 = sudu[0:5184,3].reshape(81,64)
plt.imshow(u3,extent=extent,origin='lower')
#plt.axis("equal")
plt.subplot(235)
u4 = sudu[0:5184,4].reshape(81,64)
plt.imshow(u4,extent=extent,origin='lower')
plt.subplot(236)
u5 = sudu[0:5184,4].reshape(81,64)
plt.imshow(u5,extent=extent,origin='lower')
#contour
cs = plt.contour(u5, 20,extent = extent)
plt.xlim(-0.8,0.8)
plt.ylim(0.6,2.2)
plt.axis('equal')

基于python批量处理dat文件及科学计算方法详解

基于python批量处理dat文件及科学计算方法详解

python的科学计算功能与matlab及其相似,python有几点不同在于

1.python有元组的数据类型,元组不同于列表,元组不可更改

2.python的数据检索使用[]

总而言之,python的数据形式及其丰富。

numpy以及pandas是python用于数据处理的两个库,具体使用方法主要推荐python科学计算这本书。matplotlib用于绘图,刚也说了,其调色板很厉害哦,图像质量不错。

预告:代码运行环境均为jupyter notebook,简直神器一般的存在,网上搭建的资料也太多。

以上这篇基于python批量处理dat文件及科学计算方法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
为python设置socket代理的方法
Jan 14 Python
在Django框架中编写Context处理器的方法
Jul 20 Python
Python cookbook(字符串与文本)针对任意多的分隔符拆分字符串操作示例
Apr 19 Python
Python日期时间对象转换为字符串的实例
Jun 22 Python
Python 实现取矩阵的部分列,保存为一个新的矩阵方法
Nov 14 Python
PYQT5实现控制台显示功能的方法
Jun 25 Python
Python实现的统计文章单词次数功能示例
Jul 08 Python
Python3从零开始搭建一个语音对话机器人的实现
Aug 23 Python
python自动识别文本编码格式代码
Dec 26 Python
django restframework serializer 增加自定义字段操作
Jul 15 Python
基于python实现操作redis及消息队列
Aug 27 Python
Python更改pip镜像源的方法示例
Dec 01 Python
使用Python通过win32 COM实现Word文档的写入与保存方法
May 08 #Python
Ubuntu下使用python读取doc和docx文档的内容方法
May 08 #Python
儿童编程python入门
May 08 #Python
解决python大批量读写.doc文件的问题
May 08 #Python
python在每个字符后添加空格的实例
May 07 #Python
Pycharm在创建py文件时,自动添加文件头注释的实例
May 07 #Python
python 读取DICOM头文件的实例
May 07 #Python
You might like
js自带函数备忘 数组
2006/12/29 Javascript
用JS剩余字数计算的代码
2008/07/03 Javascript
javascript 事件处理、鼠标拖动效果实现方法详解
2012/05/11 Javascript
jQuery学习笔记 操作jQuery对象 CSS处理
2012/09/19 Javascript
js+HTML5实现canvas多种颜色渐变效果的方法
2015/06/05 Javascript
jquery实现LED广告牌旋转系统图片切换效果代码分享
2015/08/26 Javascript
jquery自定义右键菜单、全选、不连续选择
2016/03/01 Javascript
纯js和css完成贪吃蛇小游戏demo
2016/09/01 Javascript
bootstrap栅格系统示例代码分享
2017/05/22 Javascript
vue.js使用3DES加密的方法示例
2018/05/18 Javascript
JavaScript代码调试方法实例小结
2019/01/05 Javascript
JavaScript常用事件介绍
2019/01/21 Javascript
React实现评论的添加和删除
2020/10/20 Javascript
Python random模块常用方法
2014/11/03 Python
Scrapy基于selenium结合爬取淘宝的实例讲解
2018/06/13 Python
PyQt5实现从主窗口打开子窗口的方法
2019/06/19 Python
微信公众号token验证失败解决方案
2019/07/22 Python
python3 BeautifulSoup模块使用字典的方法抓取a标签内的数据示例
2019/11/28 Python
浅谈python累加求和+奇偶数求和_break_continue
2020/02/25 Python
详解python logging日志传输
2020/07/01 Python
基于python实现图片转字符画代码实例
2020/09/04 Python
详解selenium + chromedriver 被反爬的解决方法
2020/10/28 Python
MoviePy常用剪辑类及Python视频剪辑自动化
2020/12/18 Python
删除pycharm鼠标右键快捷键打开项目的操作
2021/01/16 Python
CSS3 透明色 RGBA使用介绍
2013/08/06 HTML / CSS
美国知名的摄影器材销售网站:Adorama
2017/02/01 全球购物
Reebok官方旗舰店:美国知名健身品牌锐步
2019/01/07 全球购物
美国肌肉和力量商店:Muscle & Strength
2019/06/22 全球购物
医学专业五年以上个人求职信
2013/12/03 职场文书
工作失误检讨书(经典集锦版)
2014/10/17 职场文书
赵氏孤儿观后感
2015/06/09 职场文书
远程教育集中轮训基层干部培训班学习心得体会
2016/01/09 职场文书
电工生产实习心得体会
2016/01/22 职场文书
公文写作指导之倡议书!
2019/07/03 职场文书
Win11如何修改dns?Win11修改dns图文教程
2022/01/18 数码科技
HTML5中的DOCUMENT.VISIBILITYSTATE属性详解
2023/05/07 HTML / CSS