基于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访问纯真IP数据库的代码
May 19 Python
Python多层嵌套list的递归处理方法(推荐)
Jun 08 Python
浅谈python脚本设置运行参数的方法
Dec 03 Python
python操作文件的参数整理
Jun 11 Python
Django 模型类(models.py)的定义详解
Jul 19 Python
python读取tif图片时保留其16bit的编码格式实例
Jan 13 Python
使用卷积神经网络(CNN)做人脸识别的示例代码
Mar 27 Python
Python如何使用input函数获取输入
Aug 06 Python
一篇文章搞懂python的转义字符及用法
Sep 03 Python
python中复数的共轭复数知识点总结
Dec 06 Python
解决selenium+Headless Chrome实现不弹出浏览器自动化登录的问题
Jan 09 Python
Python正则表达式中flags参数的实例详解
Apr 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
PHP 在5.1.* 和5.2.*之间 PDO数据库操作中的不同之处小结
2012/03/07 PHP
PHP中include与require使用方法区别详解
2013/10/19 PHP
php中ob函数缓冲机制深入理解
2015/08/03 PHP
PHP数据库处理封装类实例
2016/12/24 PHP
javascript textarea光标定位方法(兼容IE和FF)
2011/03/12 Javascript
表单JS弹出填写提示效果代码
2011/04/16 Javascript
jquery遍历数组与筛选数组的方法
2013/11/05 Javascript
JQuery $.each遍历JavaScript数组对象实例
2014/09/01 Javascript
利用JavaScript的%做隔行换色的实例
2017/11/25 Javascript
vue better-scroll插件使用详解
2018/01/25 Javascript
详解Vue SPA项目优化小记
2018/07/03 Javascript
element-ui组件table实现自定义筛选功能的示例代码
2019/03/15 Javascript
Vue scrollBehavior 滚动行为实现后退页面显示在上次浏览的位置
2019/05/27 Javascript
nodejs中各种加密算法的实现详解
2019/07/11 NodeJs
将Django框架和遗留的Web应用集成的方法
2015/07/24 Python
Python2.7+pytesser实现简单验证码的识别方法
2017/12/29 Python
Django 开发环境配置过程详解
2019/07/18 Python
深入浅析Python 函数注解与匿名函数
2020/02/24 Python
python实现图像全景拼接
2020/03/27 Python
浅谈tensorflow模型保存为pb的各种姿势
2020/05/25 Python
CSS3实现跳动的动画效果
2016/09/12 HTML / CSS
CSS3教程(3):border-color网页边框色彩
2009/04/02 HTML / CSS
SNIDEL官网:日本VIVI杂志人气少女第一品牌
2020/03/12 全球购物
一道Delphi上机题
2012/06/04 面试题
医院学雷锋活动策划方案
2014/02/15 职场文书
歌唱比赛主持词
2014/03/18 职场文书
推荐信模板
2014/05/09 职场文书
学习雷锋演讲稿
2014/05/10 职场文书
2014最新离职证明范本
2014/09/12 职场文书
2014年大学教师工作总结
2014/12/02 职场文书
工程款申请报告
2015/05/15 职场文书
电影建国大业观后感
2015/06/01 职场文书
初一军训感言
2015/08/01 职场文书
《游戏公平》教学反思
2016/02/20 职场文书
导游词之黄果树瀑布
2019/09/20 职场文书
python通过新建环境安装tfx的问题
2022/05/20 Python