Hi: Is there any function in R which can convert the long/lat to UTM(Universal Transverse Mercator)? There are quite a few converters on Internet. However, the interface is designed as input->output which I can not convert lots of locations at the same time. Another question is whether there is a function in R which can tell the time zone from the location's lat/long? Thank you! liu
I think I recall seeing a limited capability in the PBSmapping package. Tom> -----Original Message----- > From: yyan liu [mailto:zhliur at yahoo.com] > Sent: Wednesday, 9 March 2005 1:20 PM > To: r-help at stat.math.ethz.ch > Subject: [R] from long/lat to UTM > > > Hi: > Is there any function in R which can convert the > long/lat to UTM(Universal Transverse Mercator)? > There are quite a few converters on Internet. > However, the interface is designed as input->output > which I can not convert lots of locations at the same > time. > Another question is whether there is a function in R > which can tell the time zone from the location's > lat/long? > Thank you! > > liu > > ______________________________________________ > R-help at stat.math.ethz.ch mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide! > http://www.R-project.org/posting-guide.html >
Hi Yyan, The proj4R package by Roger Bivand will allow you to project data in many ways and directions. http://spatial.nhh.no/R/Devel/proj4R-pkg.pdf It uses the proj libraries from: http://www.remotesensing.org/proj/ Not sure where you would derive the time zone! Good luck, Sander. yyan liu wrote:> Hi: > Is there any function in R which can convert the > long/lat to UTM(Universal Transverse Mercator)? > There are quite a few converters on Internet. > However, the interface is designed as input->output > which I can not convert lots of locations at the same > time. > Another question is whether there is a function in R > which can tell the time zone from the location's > lat/long? > Thank you! > > liu > > ______________________________________________ > R-help at stat.math.ethz.ch mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html > >-- -------------------------------------------- Dr. Sander P. Oom Animal, Plant and Environmental Sciences, University of the Witwatersrand Private Bag 3, Wits 2050, South Africa Tel (work) +27 (0)11 717 64 04 Tel (home) +27 (0)18 297 44 51 Fax +27 (0)18 299 24 64 Email sander at oomvanlieshout.net Web www.oomvanlieshout.net/sander
>>> Ted Harding <Ted.Harding at nessie.mcc.ac.uk> 03/10/05 09:13AM >>> >> On 10-Mar-05 Gabor Grothendieck wrote: >> > <Ted.Harding <at> nessie.mcc.ac.uk> writes: >> >: [...] >> >: As Sander says, "Not sure where you would derive the timezone!".>> >:[snip]>> The only completely general mechanism I can think of would >> consist of >> >> a) a named list of boundary contoursI found a shapefile of time zones at: http://openmap.bbn.com/data/shape/timezone/ A google search on the keywords timezone & shapefile finds a few other possibilities.>> b) a function which, for each name in the list, returns >> the TZ nameThe "maptools" package can read in the above shapefile and convert it to a list of polygons and the "sgeostat" has an "in.polygon" function to see if a point is in a given polygon. The following code worked for me: library(maptools) tz <- read.shape('c:/maps/WrldTZA') plot(tz) plot(tz,xlim=c(-150,-50), ylim=c(20,50)) mappoly <- Map2poly(tz) library(sgeostat) tmp <- sapply(mappoly, function(x){ x <- na.exclude(x) in.polygon( -110, 42, x[,1], x[,2] ) } ) tz$att.data[tmp,] the -110 and 42 come from me plotting the map and using locator to approximate where I am at. I was actually suprized at how quick the sapply was (under a second on my fairly fast pc (windows 2000)). It shouldn't be too hard to convert this into a more general function. Greg Snow, Ph.D. Statistical Data Center greg.snow at ihc.com (801) 408-8111