[GRASS-user] raster exchange between GRASS and R with nodata

Nuno Sá nunocesardesa at gmail.com
Thu Sep 4 06:38:26 PDT 2014


Hello!

Did you try this one?

*r.out.gdal etc nodata*=*'NA'*



On 4 September 2014 14:27, Johannes Radinger <johannesradinger at gmail.com>
wrote:

> Hi all,
>
> of course it is possible to load the raster maps directly via spgrass6.
> However, we use this work
> flow also to exchange some of the maps between different users (e.g. via
> email) and to permanently
> store single files (geotiffs that contain the proj information within the
> file). So, I agree that using spgrass6 would be much more efficient, but
> I'll stick to exporting to geotiffs and so I need to solve the issues with
> NA's.
>
> /Johannes
>
>
> On Thu, Sep 4, 2014 at 2:31 PM, Thomas Adams <tea3rd at gmail.com> wrote:
>
>> Johannes,
>>
>> If you want to read your file into R, there is no need to export your map
>> from GRASS to do this. Simply install and use the R contributed package
>> 'spgrass6' (spgrass6 has R dependencies that need to be installed first);
>> it works wonderfully:
>>
>> Within GRASS, at the GRASS terminal prompt...
>>
>> > library(spgrass6)
>> Loading required package: sp
>> Loading required package: XML
>> GRASS GIS interface loaded with GRASS version: GRASS 7.0.0beta3 (2014)
>> and location: ohrfc_mpe
>> > dat<-readRAST6("xmrg0101200306z")
>> > image(dat)
>>
>> This is far more efficient.
>>
>> Tom
>>
>>
>>  On Thu, Sep 4, 2014 at 5:32 AM, Johannes Radinger <
>> johannesradinger at gmail.com> wrote:
>>
>>>  Hi,
>>>
>>> I want to export a raster map (FCELL) from GRASS70 to the geotiff format
>>> using r.out.gdal and to import it later on in R. The map contains many no
>>> data values.
>>>
>>> Here some details about the raster:
>>> Type of Map:  raster               Number of Categories: 0
>>> Data Type:    FCELL
>>> Rows:         750
>>> Columns:      750
>>> Total Cells:  562500
>>> total null and non-null cells: 15105636
>>> total null cells: 15105047
>>>
>>> So when I export the map, r.out.gdal reports: "Input raster map contains
>>> cells with NULL-value (no-data). The value -nan will be used to represent
>>> no-data values in the input map. You can specify a nodata value with the
>>> nodata option."
>>>
>>> When I subsequently try to import the geotiff into R (using the package
>>> 'Raster') the nodata values are not recognised as NA's:
>>>
>>> a <- raster("*.tif")
>>> summary(a)
>>> Min.     0.5294496
>>> 1st Qu.  0.7171210
>>> Median   0.7871540
>>> 3rd Qu.  1.1581826
>>> Max.     1.5494517
>>> NA's     0.0000000
>>>
>>> So I am wondering if I need to set any specific parameter during the
>>> export (r.out.gdal) or import (raster()).
>>>
>>> As I am not only exporting FCELL (Float32) raster but also multiple
>>> (N=500) other rasters to R I would be interested in a solution also for
>>> DCELL (Float64). Of course I can export all of as Float64 as the file size
>>> should not be a problem.
>>>
>>> Any suggestions or experiences of handling NA's during raster exchange
>>> between GRASS and R?
>>>
>>> /Johannes
>>>
>>> _______________________________________________
>>> grass-user mailing list
>>> grass-user at lists.osgeo.org
>>> http://lists.osgeo.org/mailman/listinfo/grass-user
>>>
>>
>>
>>
>>
>
> _______________________________________________
> grass-user mailing list
> grass-user at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/grass-user
>



-- 

Nuno César de Sá
+351 91 961 90 37
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/grass-user/attachments/20140904/da83d744/attachment.html>


More information about the grass-user mailing list