如何用Matlab和Python讀取Netcdf文件
NetCDF(網絡通用數據格式)文件後綴為.nc,文件中的數據結構包含維(dimensions)、變量(variables)和屬性(attributes)三種描述類型,每種類型都會被分配一個名字和一個ID。
從數學上來說,netcdf存儲的數據就是一個多自變量的單值函數。用公式來說就是f(x,y,z,…)=value,函數的自變量x,y,z等在netcdf中叫做維(dimension)或坐標軸(axis),函數值value在netcdf中叫做變量(Variables)。而自變量和函數值在物理學上的一些性質,比如計量單位(量綱)、物理學名稱等等在netcdf中就叫屬性(Attributes)。
NetCDF name{ Dimensions:… //定義維數 Variables:… //定義變量 Attributes:… //屬性 Data:…//數據 }
讀取.nc文件可以用python的netCdf4模塊,也可以用ncbrowser,這裡我用的是Matlab。
MATLAB具有數值分析、數值和符號計算、工程與科學繪圖、控制系統的設計與仿真、數字圖像處理、數字信號處理、財務與金融工程等功能。
這是matlab打開之後的基本界面,上方為命令功能區,右側為命令行輸入欄,左上角為當前路徑中文件夾詳情,左下角為軟件工作區。
讀取nc文件的命令
%% 顯示結構
% ncdisp(ncFilePath);%顯示nc文件的所有結構,以便大概瞭解裡面的內容
% ncdisp(ncFilePath,’evap’);%顯示指定變量的內容,註意一定要是變量variables才可以
% ncdisp(ncFilePath,’/’,’min’);%簡單顯示結構以及定義
% ncdisp(ncFilePath,’/’,’full’);%全部顯示所有結構和定義信息
然後調用ncread讀取變量值:
vardata = ncread(source,varname) vardata = ncread(source,varname,start,count,stride)
(1)start
varname所指定變量的每一維的開始讀取的位置
(2)count
從start指定的開始位置算起,一共讀取的每一維要素的數目
(3)stride
從start開始,每一維讀取的數目為count時,每一維的讀取的步長
更新:用python讀取.nc文件
安裝netCDF4庫
導入nc庫,用Dataset函數讀取文件信息
f.variables.keys()讀取所有變量名稱
f.variables.items()讀取所有變量信息
讀取單個變量的值
以上就是如何用Matlab和Python讀取Netcdf文件的詳細內容,更多關於Matlab和Python讀取Netcdf文件的資料請關註WalkonNet其它相關文章!
推薦閱讀:
- Matlab操作HDF5文件示例
- 解決python調用matlab時的一些常見問題
- python matlab庫簡單用法講解
- 使用python進行nc轉tif的3種情況解決
- 詳解python讀取matlab數據(.mat文件)