MATLAB: How to extract the data from .nc file based on lat,lon


Hi, I have .nc file. I have to extract the data based on lat,lon points. I tried the following code,
precJanuary = ncread('\C:\Users\divecha21\Desktop\errorBar\tasmax_day_GFDL-','tasmax',[1 1 1],[10 10 1]);
After the execution I got the data for 10 lat,lon points.
Instead of that start,end I tried latitude,longitude limits.
I got the following error,
precJanuary = ncread('\C:\Users\divecha21\Desktop\errorBar\tasmax_day_GFDL-','tasmax',[60.25 5.25 1],[97.25 36.75 1]);
Error using ncread Expected start to be integer-valued.
Error in (line 557) validateattributes(start,{'numeric'},…
Error in ncread (line 58) vardata =, varargin{:});
Error in sample1 (line 28) precJanuary = ncread('\C:\Users\divecha21\Desktop\errorBar\','tasmax',[60.25 5.25 1],[97.25 36.75 1]);
Can any one help me to clear this?
Thank you

Best Answer

  • According to the ncread command documentation (type help ncread in the Command Window) the START and COUNT inputs are defined as:
    For an N-dimensional variable START is a vector of 1-based indices of length N
    specifying the starting location. COUNT is also a vector of length N specifying
    the number of elements to read along corresponding dimensions. If a particular
    element of COUNT is Inf, data is read until the end of that dimension.
    In the above code, you are supplying rational (non-integer) inputs as the START and COUNT, hence the error Expected start to be integer-valued.