如何用Matlab和Python讀取Netcdf文件
NetCDF(網(wǎng)絡(luò)通用數(shù)據(jù)格式)文件后綴為.nc,文件中的數(shù)據(jù)結(jié)構(gòu)包含維(dimensions)、變量(variables)和屬性(attributes)三種描述類型,每種類型都會被分配一個名字和一個ID。
從數(shù)學(xué)上來說,netcdf存儲的數(shù)據(jù)就是一個多自變量的單值函數(shù)。用公式來說就是f(x,y,z,...)=value,函數(shù)的自變量x,y,z等在netcdf中叫做維(dimension)或坐標(biāo)軸(axis),函數(shù)值value在netcdf中叫做變量(Variables)。而自變量和函數(shù)值在物理學(xué)上的一些性質(zhì),比如計量單位(量綱)、物理學(xué)名稱等等在netcdf中就叫屬性(Attributes)。
NetCDF name{Dimensions:… //定義維數(shù)Variables:… //定義變量Attributes:… //屬性Data:…//數(shù)據(jù)}
讀取.nc文件可以用python的netCdf4模塊,也可以用ncbrowser,這里我用的是Matlab。
MATLAB具有數(shù)值分析、數(shù)值和符號計算、工程與科學(xué)繪圖、控制系統(tǒng)的設(shè)計與仿真、數(shù)字圖像處理、數(shù)字信號處理、財務(wù)與金融工程等功能。
這是matlab打開之后的基本界面,上方為命令功能區(qū),右側(cè)為命令行輸入欄,左上角為當(dāng)前路徑中文件夾詳情,左下角為軟件工作區(qū)。
%% 顯示結(jié)構(gòu) % ncdisp(ncFilePath);%顯示nc文件的所有結(jié)構(gòu),以便大概了解里面的內(nèi)容 % ncdisp(ncFilePath,’evap’);%顯示指定變量的內(nèi)容,注意一定要是變量variables才可以 % ncdisp(ncFilePath,’/’,’min’);%簡單顯示結(jié)構(gòu)以及定義 % ncdisp(ncFilePath,’/’,’full’);%全部顯示所有結(jié)構(gòu)和定義信息
然后調(diào)用ncread讀取變量值:
vardata = ncread(source,varname)vardata = ncread(source,varname,start,count,stride)
(1)start
varname所指定變量的每一維的開始讀取的位置
(2)count
從start指定的開始位置算起,一共讀取的每一維要素的數(shù)目
(3)stride
從start開始,每一維讀取的數(shù)目為count時,每一維的讀取的步長
安裝netCDF4庫
導(dǎo)入nc庫,用Dataset函數(shù)讀取文件信息
f.variables.keys()讀取所有變量名稱
f.variables.items()讀取所有變量信息
讀取單個變量的值
以上就是如何用Matlab和Python讀取Netcdf文件的詳細(xì)內(nèi)容,更多關(guān)于Matlab和Python讀取Netcdf文件的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!
相關(guān)文章:
1. Java類加載機制實現(xiàn)步驟解析2. JAMon(Java Application Monitor)備忘記3. docker /var/lib/docker/aufs/mnt 目錄清理方法4. Python OpenCV去除字母后面的雜線操作5. Spring security 自定義過濾器實現(xiàn)Json參數(shù)傳遞并兼容表單參數(shù)(實例代碼)6. IntelliJ IDEA設(shè)置背景圖片的方法步驟7. Python os庫常用操作代碼匯總8. Python TestSuite生成測試報告過程解析9. IntelliJ IDEA設(shè)置默認(rèn)瀏覽器的方法10. 增大python字體的方法步驟
