基于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 相关文章推荐
多线程爬虫批量下载pcgame图片url 保存为xml的实现代码
Jan 17 Python
python实现简单的socket server实例
Apr 29 Python
python中的格式化输出用法总结
Jul 28 Python
Python基于pygame模块播放MP3的方法示例
Sep 30 Python
python的dataframe和matrix的互换方法
Apr 11 Python
浅析PHP与Python进行数据交互
May 15 Python
python删除字符串中指定字符的方法
Aug 13 Python
利用Python检测URL状态
Jul 31 Python
python多进程并发demo实例解析
Dec 13 Python
解决更改AUTH_USER_MODEL后出现的问题
May 14 Python
PyCharm上安装Package的实现(以pandas为例)
Sep 18 Python
Python中的 No Module named ***问题及解决
Jul 23 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乱码问题,UTF-8乱码常见问题小结
2012/04/09 PHP
PHP中file_get_contents高?用法实例
2014/09/24 PHP
ThinkPHP模板之变量输出、自定义函数与判断语句用法
2014/11/01 PHP
Zend Framework实现多文件上传功能实例
2016/03/21 PHP
Zend Framework生成验证码并实现验证码验证功能(附demo源码下载)
2016/03/22 PHP
通过Mootools 1.2来操纵HTML DOM元素
2009/09/15 Javascript
JS将秒换成时分秒实现代码
2013/09/03 Javascript
transport.js和jquery冲突问题的解决方法
2015/02/10 Javascript
浅谈String.valueOf()方法的使用
2016/06/06 Javascript
用jQuery向div中添加Html文本内容的简单实现
2016/07/13 Javascript
利用策略模式与装饰模式扩展JavaScript表单验证功能
2017/02/14 Javascript
angularJs使用$watch和$filter过滤器制作搜索筛选实例
2017/06/01 Javascript
cropper js基于vue的图片裁剪上传功能的实现代码
2018/03/01 Javascript
[04:49]2014DOTA2国际邀请赛 Newbee顺利挺进总决赛 ImbaTV独家专访
2014/07/19 DOTA
处理Python中的URLError异常的方法
2015/04/30 Python
python在linux系统下获取系统内存使用情况的方法
2015/05/11 Python
详解python脚本自动生成需要文件实例代码
2017/02/04 Python
Python判断文件或文件夹是否存在的三种方法
2017/07/27 Python
python批量图片处理简单示例
2019/08/06 Python
python matplotlib画盒图、子图解决坐标轴标签重叠的问题
2020/01/19 Python
Python错误的处理方法
2020/06/23 Python
Python爬虫爬取微信朋友圈
2020/08/06 Python
大众服装店创业计划书范文
2014/01/01 职场文书
代理商会议邀请函
2014/01/27 职场文书
喜之郎果冻广告词
2014/03/20 职场文书
旷课检讨书500字
2014/10/14 职场文书
社区服务活动报告
2015/02/05 职场文书
幼儿园工作总结2015
2015/04/01 职场文书
英语投诉信范文
2015/07/03 职场文书
2016年七夕情人节宣传语
2015/11/25 职场文书
2016年第16个全民国防教育日宣传活动总结
2016/04/05 职场文书
css position fixed 左右双定位的实现代码
2021/04/29 HTML / CSS
pytorch中F.avg_pool1d()和F.avg_pool2d()的使用操作
2021/05/22 Python
带你学习MySQL执行计划
2021/05/31 MySQL
分析Java中Map的遍历性能问题
2021/06/26 Java/Android
2021好看的国漫排行榜前十名 《完美世界》上榜,《元龙》排名第一
2022/03/18 国漫