python读取遥感 dat_基于python批量处理dat文件及科学计算方法详解
摘要:主要介绍一些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的科学计算功能与matlab及其相似,python有几点不同在于
1.python有元组的数据类型,元组不同于列表,元组不可更改
2.python的数据检索使用[]
总而言之,python的数据形式及其丰富。
numpy以及pandas是python用于数据处理的两个库,具体使用方法主要推荐python科学计算这本书。matplotlib用于绘图,刚也说了,其调色板很厉害哦,图像质量不错。
预告:代码运行环境均为jupyter notebook,简直神器一般的存在,网上搭建的资料也太多。
以上这篇基于python批量处理dat文件及科学计算方法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持聚米学院。
python读取遥感 dat_基于python批量处理dat文件及科学计算方法详解相关推荐
- python读取遥感 dat_#python读取遥感影像GDAL包的用法
#!C:/Python27/ArcGIS10.1/python.exe -u #coding:utf-8 '''the first two lines are used to choose the c ...
- python读取字典元素笔记_python学习笔记:字典的使用示例详解
经典字典使用函数 dict:通过其他映射(比如其他字典)或者(键,值)这样的序列对建立字典.当然dict成为函数不是十分确切,它本质是一种类型.如同list. items=[('name','zhan ...
- ccs读取dat文件c语言程序,详解CCS中的.dat文件
CCS支持的.dat文件的格式为: 文件头为 定数 数据格式 起始地址 页类型 数据块大小 1651 1 80000000 0 ...
- 【Python文本处理】基于运动路线记录GPX文件解析,心率、速度、时间、功率、踏频、海拔等参数的生成和更改,以及GPX循环拼接
[Python文本处理]基于运动路线记录GPX文件解析,心率.速度.时间.功率.踏频.海拔等参数的生成和更改,以及GPX循环拼接 GPX文件本身其实就是坐标.海拔.时间.心率等综合性的xml文件 如图 ...
- Python语言学习:基于python五种方法实现使用某函数名【func_01】的字符串格式('func_01')来调用该函数【func_01】执行功能
Python语言学习:基于python五种方法实现使用某函数名[func_01]的字符串格式('func_01')来调用该函数[func_01]执行功能 目录 问题提出 代码五种设计思路 T1方法:e ...
- Python之GUI:基于Python的GUI界面设计的一套AI课程学习(机器学习、深度学习、大数据、云计算等)推荐系统(包括语音生成、识别等前沿黑科技)
Python之GUI:基于Python的GUI界面设计的一套AI课程学习(机器学习.深度学习.大数据.云计算等)推荐系统(包括语音生成.识别等前沿黑科技) 导读 基于Python的GUI界面设计的一套 ...
- Python人脸识别教程 - 基于Python的开源人脸识别库:离线识别率高达99.38%
Python人脸识别教程 - 基于Python的开源人脸识别库:离线识别率高达99.38% 仅用 Python 和命令行就可以实现人脸识别的库开源了.该库使用 dlib 顶尖的深度学习人脸识别技术构建 ...
- Python数据分析初探项目 基于Python数据可视化的网易云音乐歌单分析系统 大学编程作业(TUST 天津科技大学 2022年)
Python 数据分析初探项目 基于 Python 数据可视化的网易云音乐歌单分析系统 大学编程作业(TUST 天津科技大学 2022 年) Python 数据分析初探项目 基于 Python 数据可 ...
- 【Python文本处理】基于运动路线记录GPX文件的基础运动速度求解,并转为SRT字幕格式(不需要安装三方库)
[Python文本处理]基于运动路线记录GPX文件的基础运动速度求解,并转为SRT字幕格式(不需要安装三方库) 解析 GPX文件格式 GPX文件本身其实就是坐标.海拔.时间.心率等综合性的xml文件 ...
最新文章
- C#语言中的可访问性约束
- centos7离线安装mysql_Red Hat6.4离线安装mysql安装手册
- SecureCRT同时向多个终端发送命令
- sql数据表改为自动递增显示与其他表关联_MySQL萌新第一季 第四话-数据表的基本操作...
- 首个智能风控国际标准发布,蚂蚁风控技术入局全球
- 种一棵树最好的时间是十年前,其次是现在。
- 阵列信号处理及matlab实现_球形麦克风阵列设计
- Learning Multi-granularity Consecutive User Intent Unit for Session-based Recommendation
- pandas计算对数收益率
- 火车头采集html5游戏,火车采集器7.6-火车头数据采集平台1.6教程
- linux winqq 不能输入中文的解决办法
- 数据挖掘 任务一:预测贷款是否逾期
- 2021-01-22
- python 切割图_python切割图片的示例
- 【Jsoup】 基本使用
- Python量化教程:量化风险
- MySQL笔记:第06章_多表查询
- python 使用for循环,遍历列表里想要的值
- 使用python输出真值表
- 使用zlib库进行数据压缩、解压缩
热门文章
- 20210907 Engine and SDK in development
- App自动化测试之Adb基础命令使用
- swagger报错No handler found for GET /swagger-ui.html
- USACO1.3.4 Prime Cryptarithm 牛式 解题报告(模拟)
- 使用myeclipse创建带注解的model实体类
- asp.net中退出登陆的相关问题(解决后退或直接粘贴地址进入网页的问题)
- AbpZero之企业微信---登录(拓展第三方auth授权登录)---第一步:查看AbpZero的auth第三方登录的底层机制...
- Getting Installation aborted (Status 7) ApplyParsePerms: lsetfilecon of /syst...【转】
- [ACM] hdu 1285 确定比赛名次 (拓扑排序)
- linux中chkconfig 启动程序顺序介绍