No problem. I'm glad it worked. It would be pretty easy to package as a function for gstat. -Andy
> -----Original Message----- > From: femke [mailto:[EMAIL PROTECTED] > Sent: Thursday, February 19, 2004 2:54 PM > To: Andy Bunn > Subject: Re: [R] importing ascii grids (for gstat) > > > > Thanks very much for your help on this. Your directions > worked beautifully. Now if only somone would put that in a > standard function for a package like gstat. > > If you don't mind, I'll post it to the gstat list > (referencing you as the source). > > Cheeers, > > femke > > ----- Original Message ----- > From: "Andy Bunn" <[EMAIL PROTECTED]> > To: "'femke'" <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]> > Sent: Tuesday, February 17, 2004 12:00 PM > Subject: RE: [R] importing ascii grids (for gstat) > > > > If you have exported the grid from Arc using the asciigrid command > > then you can read it in with scan or read.table. You can tell R to > > skip the six lines of header info and to convert -9999 to NA e.g., > > > > $ snep.tmin <- read.table(file = "tmin.asc", sep = " ", > na.strings = > > "-9999", skip = 6) > > > > Check the number of rows and columns to make sure it > matches your data > > (in Windows, Arc puts a space before the line return at the > end of a > > row making the resulting R object have one too many columns.) > > > > If that happens, then remove it: > > > > $ snep.tmin <- snep.tmin[,-ncol(snep.tmin)] > > > > (If there is a work around for the read.table command that somebody > > else uses then I'd love to hear it.) > > > > For gstat, it looks like it would be helpful to put the grid into a > > vector and attach the coordinate information in a data > frame? If so, > > from the header information take the lower left corner and > make your > > coordinate columns and join it to the grid data. e.g., > > > > $ xLLcorner <- -1855500 > > $ yLLcorner <- -944500 > > $ cellsize <- 1000 > > $ > > $ xURcorner <- xLLcorner + (cellsize * (ncol(snep.tmin) - 1)) $ > > xLRcorner <- xURcorner $ xULcorner <- xLLcorner > > $ > > $ yULcorner <- yLLcorner + (cellsize * (nrow(snep.tmin) - 1)) > > $ yURcorner <- yULcorner > > $ yLRcorner <- yLLcorner > > $ > > $ coords <- expand.grid(y = seq(yULcorner, yLRcorner, by = -1000), > > + x = seq(xULcorner, xLRcorner, by = 1000)) > > $ > > $ tmin.frame <- data.frame(coords, tmin = as.vector(c(snep.tmin, > > recursive = T))) $ $ > > > > Watch your signs depends on the coordinate system. From > there you can > > krige or whatever easily. > > > > HTH, Andy > > > > > > > > $ version > > _ > > platform i386-pc-mingw32 > > arch i386 > > os mingw32 > > system i386, mingw32 > > status > > major 1 > > minor 8.1 > > year 2003 > > month 11 > > day 21 > > language R > > > > ______________________________________________ [EMAIL PROTECTED] mailing list https://www.stat.math.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
