[R-sig-Geo] writeRaster give error "no slot of name "file" for this object..."

Jon Olav Skoien jon.skoien at jrc.ec.europa.eu
Wed Jul 16 11:12:02 CEST 2014


s is not updated with the file name of your output grid just by a call 
to writeStart, you need to assign the result of writeStart to s:

s <- writeStart(s, filename = 'landuse4BA.grd', overwrite =TRUE)

See the output of str(s) before and after the call to writeStart to see 
the difference. Then it should be possible to write values to the file 
as well.

Cheers,
Jon


On 16-Jul-14 6:43, Herry wrote:
> Hello,
>
> I have a similar problem, but using the latest versions of R and raster:
>
> "luse1"<-function(x){
>    x[x >=1 & x<=199]<-100        #Conservation land use
>    x[x >=200 & x<=299]<-200        #Native Vegetation extensive use
>    x[x >=210 & x<=210]<-210        #Grazing native vegetation
>    x[x >=221 & x<=222]<-220        #Production forestry
>    x[x >=300 & x<=399]<-300        #Dryland agriculture and plantations
>    x[x >=310 & x<=314]<-310        #Plantations
>    x[x >=321 & x<=325]<-320        #Grazing modified pastures
>    x[x >=331 & x<=338]<-330        #Cropping
>    x[x >=341 & x<=349]<-340        #Horticulture
>    x[x >=400 & x<=499]<-400        #Irrigated agriculture and plantations
>    x[x >=411 & x<=414]<-410        #Irrigated plantation
>    x[x >=421 & x<=224]<-420        #Irrigated pasture
>    x[x >=431 & x<=439]<-430        #Irrigated cropping
>    x[x >=441 & x<=449]<-440        #Irrigated horticulture
>    x[x >=451 & x<=455]<-450        #Irrigated seasonal horticulture
>    x[x >=500 & x<=599]<-500        #Intensive uses
>    x[x >=600 & x<=699]<-600        #Water
>    x[x >=611 & x<=614]<-610        #Lake
>    x[x >=621 & x<=623]<-620        #Reservoir or dam
>    x[x >=631 & x<=633]<-630        #River
>    x[x >=641 & x<=643]<-640        #Channel/aquaduct
>    x[x >=651 & x<=654]<-650        #Marsh/wetland
>    x[x >=661 & x<=663]<-660        #Estuary/coast waters
>    return(x[])
> }
>
>
>
>> writeStart(s, filename = 'landuse4BA.grd', overwrite =TRUE)
> class       : RasterLayer
> dimensions  : 76740, 80200, 6154548000  (nrow, ncol, ncell)
> resolution  : 50, 50  (x, y)
> extent      : -1888000, 2122000, -4847000, -1010000  (xmin, xmax, ymin,
> ymax)
> coord. ref. : +proj=aea +lat_1=-18 +lat_2=-36 +lat_0=0 +lon_0=132 +x_0=0
> +y_0=0 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs
> data source :
> \\wron/Project/BA/BA_ecology/Ozdata/landuse/clum_50m0314m/R/landuse4BA.grd
> names       : clum50m0314
>
>> for (i in 1:nrow(rs)) {
> +   print(paste(i, "of", nrow(rs),";", round(i/nrow(rs)*100,1), "%
> complete"))
> +   v <- getValues(rs, row=i, nrows=1)
> +   z<-luse1(v) #assign landuse value
> +   s <- writeValues(s, z, i)
> + }
> [1] "1 of 76740 ; 0 % complete"
> Error in is(object) :
>    no slot of name "transient" for this object of class ".RasterFile"
>
>
>> sessionInfo()
> R version 3.1.1 (2014-07-10)
> Platform: x86_64-w64-mingw32/x64 (64-bit)
>
> locale:
> [1] LC_COLLATE=English_Australia.1252  LC_CTYPE=English_Australia.1252
> LC_MONETARY=English_Australia.1252 LC_NUMERIC=C
> LC_TIME=English_Australia.1252
>
> attached base packages:
> [1] stats     graphics  grDevices utils     datasets  methods   base
>
> other attached packages:
> [1] rgdal_0.8-16  raster_2.2-31 sp_1.0-15     spatial_7.3-8
>
> loaded via a namespace (and not attached):
> [1] grid_3.1.1      lattice_0.20-29
>
>
> Any suggestions?
> Thanks and cheers
> Herry
>
>
>
> --
> View this message in context: http://r-sig-geo.2731867.n2.nabble.com/writeRaster-give-error-no-slot-of-name-file-for-this-object-tp6450479p7586744.html
> Sent from the R-sig-geo mailing list archive at Nabble.com.
>
> _______________________________________________
> R-sig-Geo mailing list
> R-sig-Geo at r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-sig-geo


-- 
Jon Olav Skøien
Joint Research Centre - European Commission
Institute for Environment and Sustainability (IES)
Climate Risk Management Unit

Via Fermi 2749, TP 100-01,  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.



More information about the R-sig-Geo mailing list