I ended up getting a bunch of climate NetCDF files from a colleague for each combination of climate model, climate change scenario and variable. So, what I have is a list of 3-D files consisting of observations/predictions of a given weather variable over latitude, longitude and time (you can picture them as cubes, if you like). I will need to spatially adjust the files, and then subset the data.
ncpdq -a lat,lon in.nc out.nc
I need to…
- keep only the extent within a shape file we’re using
- figure out how to summarize it by the polygons in the shape file
- average?
- keep only the center point?
Some of my closest colleagues, Brooke Bateman and Andy Allstadt, had some good advice for how to work with the netCDF files in R once I get them:
- ncdf4 package
- raster package: can open netCDF either as…
- single layer (with the raster function)
- the entire thing (brick function)
- SDMTools
- sample x,y points from raster using extract data function
- convert the raster to ASCII
You can load those libraries, and then do a few things to take a look.
library(<span class="pl-smi">raster</span>) print(raster(<span class="pl-s"><span class="pl-pds">"</span>afile.nc<span class="pl-pds">"</span></span>)) <span class="pl-c">## same as 'ncdump -h afile.nc</span> b <- brick(<span class="pl-s"><span class="pl-pds">"</span>afile.nc<span class="pl-pds">"</span></span>, <span class="pl-v">varname</span> <span class="pl-k">=</span> <span class="pl-s"><span class="pl-pds">"</span>pr<span class="pl-pds">"</span></span>) #this is the variable name internal to the file