[R] about netcdf files

Jon Skoien jon.skoien at jrc.ec.europa.eu
Wed Jul 27 09:10:44 CEST 2016


I think you get the error because you passed the object from nc_open(), 
you should rather pass the filename of the netCDF, so:

pre = brick("sample_precip_daily.nc")
 From the test-file, this gives you a RasterBrick-object with 5*9 pixels 
and 7305 layers.
Then you can extract data.frames of each layer with:
dframe = rasterToPoints(pre[[1]])
where 1 is the first layer, or time series with:
tseries = pre[3,4]
where 3 and 4 are the pixels in x and y-direction.

To write dframe to csv:
write.csv(dframe, filename = "csvfile.csv")
Check the function for more options.

Hope this helps you a bit further.
Jon

On 7/26/2016 9:07 PM, lily li wrote:
> Thanks for your reply. But it says "Error in (function (classes, fdef, 
> mtable)):
> unable to find an inherited method for function 'brick' for signature 
> 'ncdf4' "
>
> The dataset is attached. It contains daily precipitation data for 20 
> years, within a rectangle, so that there are several grid points. I 
> use the code to open it, but don't know how to get csv files, while 
> each file contains continuous daily precipitation data for each grid cell.
> pre1 = nc_open('sample_precip_daily.nc <http://sample_precip_daily.nc>')
> pre1
> pre1_rd = ncvar_get(pre1, 'precipitation')
> nc_close(pre1)
>
> Thanks for your help.
>
> On Tue, Jul 26, 2016 at 4:08 AM, Jon Skoien 
> <jon.skoien at jrc.ec.europa.eu <mailto:jon.skoien at jrc.ec.europa.eu>> wrote:
>
>     You could try with the brick function from the raster package.
>
>     bvar = brick(netcdfName)
>
>     This uses the ncdf4 functions for opening and reading the netcdf,
>     but makes it easier to extract data for each day:
>
>     p1 = rasterToPoints(bvar[[1]])
>     and write p1 to csv.
>
>     Best,
>     Jon
>
>
>
>     On 7/26/2016 6:54 AM, lily li wrote:
>
>         Hi all,
>
>         I have a problem in opening netcdf files. If one netcdf file
>         contains
>         longitude, latitude, and daily precipitation. How to relate each
>         precipitation record to its associated location, and export
>         them as csv
>         files? Thanks.
>
>         I just use nc_open(), ncvar_get(), but it is not very helpful.
>         Thanks for
>         any ideas.
>
>                 [[alternative HTML version deleted]]
>
>         ______________________________________________
>         R-help at r-project.org <mailto:R-help at r-project.org> mailing
>         list -- To UNSUBSCRIBE and more, see
>         https://stat.ethz.ch/mailman/listinfo/r-help
>         PLEASE do read the posting guide
>         http://www.R-project.org/posting-guide.html
>         and provide commented, minimal, self-contained, reproducible code.
>
>
>     -- 
>     Jon Olav Skøien
>     Joint Research Centre - European Commission
>     Institute for Space, Security & Migration
>     Disaster Risk Management Unit
>
>     Via E. Fermi 2749, TP 122,  I-21027 Ispra (VA), ITALY
>
>     jon.skoien at jrc.ec.europa.eu <mailto:jon.skoien at jrc.ec.europa.eu>
>     Tel: +39 0332 789205 <tel:%2B39%200332%20789205>
>
>     Disclaimer: Views expressed in this email are those of the
>     individual and do not necessarily represent official views of the
>     European Commission.
>
>

-- 
Jon Olav Skøien
Joint Research Centre - European Commission
Institute for Space, Security & Migration
Disaster Risk Management Unit

Via E. Fermi 2749, TP 122,  I-21027 Ispra (VA), ITALY

jon.skoien at jrc.ec.europa.eu
Tel:  +39 0332 789205

Disclaimer: Views expressed in this email are those of the individual and do not necessarily represent official views of the European Commission.


	[[alternative HTML version deleted]]



More information about the R-help mailing list