我有以下DMS格式的坐标,需要将它们转换为十进制度数。
尽管接近,但这个结果与此网站的输出不同。根据该网站,正确的输出应为:
# Libraries
> library(sp)
> library(magrittr)
# Latitide & Longitude as strings
> lat <- '21d11m24.32s'
> lng <- '104d38m26.88s'
我尝试过:
> lat_d <- char2dms(lat, chd='d', chm='m', chs='s') %>% as.numeric()
> lng_d <- char2dms(lng, chd='d', chm='m', chs='s') %>% as.numeric()
> print(c(lat_d, lng_d))
[1] 21.18333 104.63333
尽管接近,但这个结果与此网站的输出不同。根据该网站,正确的输出应为:
看起来纬度:21.190089
经度:104.6408
sp::char2dms
和as.numeric
将坐标四舍五入了。我注意到这个问题是在使用此方法转换大批量DMS坐标时出现的,因为转换后唯一值的数量急剧减少。
sp
会对输入进行四舍五入。 - Arturo Sbr