溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

基于python如何批量處理dat文件

發(fā)布時間:2021-08-18 14:32:37 來源:億速云 閱讀:395 作者:小新 欄目:開發(fā)技術(shù)

這篇文章主要介紹基于python如何批量處理dat文件,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

批處理文件功能

import os
path2 = 'C:\\Users\\awake_ljw\\Documents\\python for data analysis\\test1'
path3 = 'C:\\Users\\awake_ljw\\Documents\\python for data analysis\\test2'
filelist = os.listdir(path2)
for files in filelist:
 Olddir = os.path.join(path2,files)
 filename = os.path.splitext(files)[0]
 filetype = os.path.splitext(files)[1]
 print Olddir
 file_test = open(Olddir,'r')
 Newdir = os.path.join(path3,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最基礎(chǔ)的模塊之一,一般用于文件處理等操作。上面這段代碼主要就是將dat文件轉(zhuǎn)化為csv文件,同時保證csv可讀。一般txt文件不能通過直接改后綴改變呈csv文件格式,一般會造成文件不可讀。csv文件一般通過逗號分隔文本,數(shù)據(jù)處理起來較得心應手,可以直接改后綴得到xlsx文件,一般excel也可讀。

科學計算

matlab作為一門科學計算編程語言,在科學計算的應用實在廣泛,包括webread等強大的函數(shù)用起來十分順手,但matlab是商業(yè)軟件,并不免費。其實,python在科學計算效率或函數(shù)庫功能包括其繪圖功能、圖像處理都很強大,(相比matlab,python的調(diào)色板更出色)。以下列舉一些數(shù)據(jù)文件讀取,繪圖的一些基本操作作為參考。

數(shù)據(jù)提取及繪圖

#數(shù)據(jù)提取
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有元組的數(shù)據(jù)類型,元組不同于列表,元組不可更改

2.python的數(shù)據(jù)檢索使用[]

總而言之,python的數(shù)據(jù)形式及其豐富。

numpy以及pandas是python用于數(shù)據(jù)處理的兩個庫,具體使用方法主要推薦python科學計算這本書。matplotlib用于繪圖,剛也說了,其調(diào)色板很厲害哦,圖像質(zhì)量不錯。

以上是“基于python如何批量處理dat文件”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI