如何用Matlab和Python讀取Netcdf文件
NetCDF(網(wǎng)絡(luò)通用數(shù)據(jù)格式)文件后綴為.nc,文件中的數(shù)據(jù)結(jié)構(gòu)包含維(dimensions)、變量(variables)和屬性(attributes)三種描述類(lèi)型,每種類(lèi)型都會(huì)被分配一個(gè)名字和一個(gè)ID。
從數(shù)學(xué)上來(lái)說(shuō),netcdf存儲(chǔ)的數(shù)據(jù)就是一個(gè)多自變量的單值函數(shù)。用公式來(lái)說(shuō)就是f(x,y,z,...)=value,函數(shù)的自變量x,y,z等在netcdf中叫做維(dimension)或坐標(biāo)軸(axis),函數(shù)值value在netcdf中叫做變量(Variables)。而自變量和函數(shù)值在物理學(xué)上的一些性質(zhì),比如計(jì)量單位(量綱)、物理學(xué)名稱(chēng)等等在netcdf中就叫屬性(Attributes)。
NetCDF name{Dimensions:… //定義維數(shù)Variables:… //定義變量Attributes:… //屬性Data:…//數(shù)據(jù)}
讀取.nc文件可以用python的netCdf4模塊,也可以用ncbrowser,這里我用的是Matlab。
MATLAB具有數(shù)值分析、數(shù)值和符號(hào)計(jì)算、工程與科學(xué)繪圖、控制系統(tǒng)的設(shè)計(jì)與仿真、數(shù)字圖像處理、數(shù)字信號(hào)處理、財(cái)務(wù)與金融工程等功能。
這是matlab打開(kāi)之后的基本界面,上方為命令功能區(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ǎn)單顯示結(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所指定變量的每一維的開(kāi)始讀取的位置
(2)count
從start指定的開(kāi)始位置算起,一共讀取的每一維要素的數(shù)目
(3)stride
從start開(kāi)始,每一維讀取的數(shù)目為count時(shí),每一維的讀取的步長(zhǎng)

安裝netCDF4庫(kù)

導(dǎo)入nc庫(kù),用Dataset函數(shù)讀取文件信息

f.variables.keys()讀取所有變量名稱(chēng)
f.variables.items()讀取所有變量信息

讀取單個(gè)變量的值

以上就是如何用Matlab和Python讀取Netcdf文件的詳細(xì)內(nèi)容,更多關(guān)于Matlab和Python讀取Netcdf文件的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!
相關(guān)文章:
1. php模擬實(shí)現(xiàn)斗地主發(fā)牌2. Python random庫(kù)使用方法及異常處理方案3. 理解PHP5中static和const關(guān)鍵字4. spring acegi security 1.0.0 發(fā)布5. Vue封裝一個(gè)TodoList的案例與瀏覽器本地緩存的應(yīng)用實(shí)現(xiàn)6. Docker 容器健康檢查機(jī)制7. jQuery 實(shí)現(xiàn)DOM元素拖拽交換位置的實(shí)例代碼8. Vuex localStorage的具體使用9. vue 使用localstorage實(shí)現(xiàn)面包屑的操作10. MyBatis中的JdbcType映射使用詳解

網(wǎng)公網(wǎng)安備