How do I use "netcdf.getVar" to read a part of a variable?

14 visualizzazioni (ultimi 30 giorni)
I have an NC file with a large matrix in it. I would like to read only a portion of that matrix into memory for my calculation. How can I do this?

Risposta accettata

MathWorks Support Team
MathWorks Support Team il 1 Giu 2023
Modificato: MathWorks Support Team il 1 Giu 2023
First, the best way to easily improve efficiency in NETCDF I/O operations is to use the low level library in MATLAB. You can find documentation on that here: 
Essentially, the system works as described in the attached "exampleNETCDF.m" file. 
In order to read a portion of the variable, you need to
1. open the file
2. get the variable ID
3. use "netcdf.getVar" with the appropriate starting row/column and number of rows/columns
4. close the file
The syntax for "netcdf.getVar" is as such:
>> data = netcdf.getVar(ncid,varid,start,count)start = [startRow-1, startCol-1]
because MATLAB is 1-indexed and NETCDF is 0-indexed.
count = [numRows, numCols]

Più risposte (0)




Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by