将 DMS 坐标转换为 R 中的十进制

2024-04-04

我有以下 DMS 格式的坐标。我需要将它们转换为十进制。

# Libraries
> library(sp)
> library(magrittr)

# Latitide & Longitude as strings
> lat <- '21d11m24.32s'
> lng <- '104d38m26.88s'

I tried:

> 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

虽然很接近,但这个结果与我得到的输出不同这个网站 https://www.fcc.gov/media/radio/dms-decimal。根据该网站,正确的输出应该是:

纬度:21.190089

经度:104.6408

看起来sp::char2dms and as.numeric对坐标进行四舍五入。我在使用此方法转换大量 DMS 坐标时注意到了这个问题,因为转换后唯一值的数量急剧减少。


你是对的!说实话,我没有注意到这个问题。 为了解决这个问题,这里有一个使用包的解决方案measurements:

REPREX:

install.packages("measurements") 
library(measurements)

lat <- conv_unit('21 11 24.32', from = "deg_min_sec", to = "dec_deg")
long <- conv_unit('104 38 26.88' , from = "deg_min_sec", to = "dec_deg")

print(c(lat, long))
#> [1] "21.1900888888889" "104.6408"

Created on 2021-10-07 by the reprex package https://reprex.tidyverse.org (v2.0.1)


从OP编辑

也可以通过添加来解决'N' or 'S'到纬度和'E' or 'W'到经度。

# Add character to lat & long strings
> lat_d <- char2dms(paste0(lat,'N'), chd='d', chm='m', chs='s') %>% as.numeric()
> lng_d <- char2dms(paste0(lng,'W'), chd='d', chm='m', chs='s') %>% as.numeric()
> print(c(lat_d, lng_d))
[1]   21.19009 -104.64080
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 DMS 坐标转换为 R 中的十进制 的相关文章

  • 加拿大人口普查地图分区 R

    我对 R 和映射非常陌生 我想创建某些数据的映射 我有一组名为 D Montreal 的数据 显示 2010 年前往蒙特利尔的加拿大人口普查部门游客来自哪个国家 我想使用此数据创建一个地图 以显示有多少人来自不同地区 也许可以通过对根据人数
  • 将值添加到 rCharts hPlot 工具提示

    我想通过 rCharts 向标准 Highcharts 工具提示添加一些额外的值 示例代码 require rCharts df lt data frame x c 1 5 y c 5 1 z c A B C D E name c K L
  • R:如何添加具有从矩阵的每一行中随机选择的值的列?

    我会先说我是一个 R 菜鸟 我认为这可能有一个简单的解决方案 但我正在努力寻找它 我有一个 2 列 1 000 行的矩阵 保持行固定 我想创建一个新变量 从两列中随机选择一个元素 例如制作一个简单的矩阵 matrix c 1 1 4 6 1
  • 当按多列分组时,如何命名 dplyr 中的 group_split 列表

    我在 dplyr 中使用 group split 在分割了多个列后 我很难命名列表 当我们按一列分组时 我知道该怎么做here https stackoverflow com questions 57107721 how to name t
  • 将非平凡函数应用于 data.table 的有序子集

    Problem 我正在尝试使用我新发现的 data table 功能 永久 来计算一堆数据的频率内容 如下所示 Sample Channel Trial Voltage Class Subject 1 1 1 196 82253 1 1 1
  • 使用facet时ggplot2控制每行的面板数量?

    Is it possible to control the number of panels per row in a ggplot I can only get an equal number of panels on each row
  • 在knitr中打印漂亮的交叉表

    我想要的是使用 R Markdown 和 knit 从 RStudio 打印漂亮的交叉表 无论是在 pdf 文件中 还是在 html 文件中 我怀疑我错过了一些非常明显的东西 因为我不敢相信这是如此困难 我使用 xtabs 或 ftable
  • 用于更改向量中元素顺序的闪亮小部件

    在很多网站上 您都有一个拖放界面来更改列表中元素的顺序 我正在寻找类似的东西闪亮 我希望用户能够拖放列表中的元素 通过更改顺序来更改优先级 现在我有一个滥用的解决方案selectizeInput 这是可行的 但当选择列表变得更大时 它很快就
  • 如何在ggplot2中使用希腊符号?

    我的类别需要用希腊字母命名 我在用ggplot2 并且它与数据配合得很好 不幸的是 我无法弄清楚如何将这些希腊符号放在 x 轴上 在刻度线处 并使它们出现在图例中 有什么办法可以做到吗 更新 我看了一下link https github c
  • R 的 dplyr 切片中的奇怪行为

    打电话时slice df i 在 R 的 dplyr 包中 如果我要求的行索引不存在 nrows lt i 它似乎返回除组中的第一行之外的所有行 就像我调用的那样slice df 1 例如 library dplyr c1 lt c a b
  • R markdown 引文标识符

    R markdown 允许使用 YAML 元数据部分中的参考书目元数据字段指定参考书目文件 例如 title Sample Document output html document bibliography bibliography bi
  • 如何更改 Quarto pptx 中的字体格式

    我正在 R 中使用 Quarto 创建 pptx 要更改我尝试更改的默认字体格式mainfont范围 但是当我渲染它时 最终的 pptx 文件具有默认字体 Calibri 这是我的文件 YAML 将 Quarto 文件渲染为 pptx 时如
  • r - 从我的应用程序下载shinyapps代码

    我正在尝试从shinyapps io 在另一台电脑上下载我的shiny 应用程序代码 我按照这个例子 https support rstudio com hc en us articles 204536588 从 shinyapps io下
  • 如何获得 R 帮助?

    R 包可能有哪些可用文档 例如我尝试理解sp包裹 此外help sp 还有哪些用于搜索帮助和文档的其他功能 获取有关您知道其名称的函数的帮助 Use http www inside r org r doc utils Question或者
  • 使用 plyr daply 将数据帧转换为矩阵

    我正在尝试使用daply函数在plyr包 但我无法让它正确输出 尽管组成矩阵的变量是数字 但矩阵的元素是列表 而不是变量本身 例如 以下是一小部分数据 Month Vehicle Samples 1 Oct 10 31057 256 2 O
  • R igraph - 保存布局?

    我想知道是否可以 保存 igraph 网络的布局 以便其他人能够重现相同的图表 目前 Fruchterman Reingold 算法总是创建一个新的网络 par mfrow c 1 2 g lt erdos renyi game 100 1
  • 创建后修改 ggplot 对象

    有没有首选的修改方式ggplot创建后的对象 例如 我建议我的学生将 r 对象与 pdf 文件一起保存以供以后更改 library ggplot2 graph lt ggplot mtcars aes x mpg y qsec fill c
  • 数据表中的 NA

    我有一个data table其中包含一些组 我对每个组进行操作 有些组返回数字 其他组返回NA 因为某些原因data table很难将所有东西重新组合在一起 这是一个错误还是我误解了 这是一个例子 dtb lt data table a 1
  • 如何使用 grid.arrange 移动图例位置

    我试图在一页中排列 4 个图 将图例放在底部中心 我用它来获取其中一个图的图例 因为它们对于四个图来说是相同的 get legend lt function myggplot tmp lt ggplot gtable ggplot buil
  • R 中的 huxtable 即使有选项也默认为科学记数法(scipen=999)

    我试图生成像样的桌子 并在过去的一周尝试了很多软件包 我的头在游泳 今天早上开始使用 package huxtable 并试图摆脱科学记数法 x lt mtcars 1 5 1 2 x mpg lt x mpg 10000000 get s

随机推荐

  • Redirect::back() 在 Laravel 5.2 中不起作用

    if count data 1 return view welcome else echo dslkfjads Redirect back gt with message Username or password not Match 上述
  • 两个日期之间的月份差异

    C 如何计算两个日期之间的月份差异 有没有相当于VB的DateDiff C 中的方法 我需要找出相隔数年的两个日期之间的月份差异 文档说我可以使用TimeSpan like TimeSpan ts date1 date2 但这给了我以天为单
  • Python 2.5:XML 中的 ElementTree 和 UML

    我正在使用一个代表 UML 模型的 XML 文件 下面是一个例子
  • Couchbase N1QL 联接查询

    需要 Couchbase 环境中的查询帮助 文档1和文档2都在同一个桶中 首先 查询将使用以下查询获取文档 message1 SELECT uid message sent by FROM bucket USE KEYS message1
  • Composer 需要 phpoffice/phpspreadsheet 不起作用

    我想使用 Phpspreadsheet 包编写一个脚本 我没有 php 经验 我正在尝试通过 sudo Composer require phpoffice phpspreadsheet 添加对我的脚本的引用 但这不起作用 我收到错误 安装
  • Mac Lion 上架构 x86_64 ImageMagick 的未定义符号

    在 Mac Lion 上 我完成了配置 制作并安装了 ImageMagick 的静态版本 一切顺利 作为配置的结果 我得到了 configuring ImageMagick 6 7 2 4 checking build system typ
  • 从 Perl 中的字符串中删除换行符

    我有一个从文本文件读取的字符串 但在 Ubuntu Linux 中 我尝试从末尾删除其换行符 我用了所有的方法 但对于s n r 我看看它是否找到任何替换任何新行字符串 它替换了字符串 但当我打印它时它仍然转到下一行 此外 当我使用chom
  • VueJS 获取 Div 的宽度

    我有一个 Vue 组件 它使用引导网格 在子组件中 我想获取控制器中某个 div 的当前宽度 这是子组件
  • 如何克服 Selenium 中的 Element id 异常?

    T 在 UiBinder 本身中为 GWT 小部件设置 id For eg 还添加了在 gwt xml 中 然后我在 Selenium 测试用例中尝试这个 WebElement element driver findElement By i
  • 为什么java TreeMap基于红黑树的实现?

    第三段维基百科关于 AVL 树的文章 http en wikipedia org wiki AVL tree说 因为 AVL 树更加严格平衡 所以对于查找密集型应用程序来说 它们比红黑树更快 所以 不应该TreeMap http docs
  • 具有递归类型参数的泛型类型以及抽象 self 方法如何允许方法链正常工作?

    我在读有效的 Java 版本 3 在第 2 章第 14 页中 作者讨论了构建器模式并呈现了以下代码 public abstract class Pizza public enum Topping HAM MUSHROOM ONION PEP
  • Java:获取对象的唯一哈希值

    我正在尝试获取Java对象的唯一哈希值 如下所示 If A B then A HashValue B Hash HashValue If A B then A HashValue B HashValue 假设该对象包含几个布尔值和整数字段
  • @angular-builders - 在优化阶段忽略某些脚本

    我需要让 Angular 忽略某个js文件在优化阶段 这样它就不会被优化 缩小 prod建造 为此目的 angular builders包似乎是一个可行的解决方案 我设置了angular json配置如下 architect build b
  • Android:如何通过 ueventd.rc 向设备授予 666 权限

    我需要访问连接到我的 已root Android 的USB 摄像头 我使用的是运行 Android 4 2 2 的三星 Galaxy S4 我想用普通的应用程序访问它 所以我需要该设备是世界可读的 我可以通过 shell 进行连接并输入 r
  • 读取Excel文件时如何识别单元格为空白或为空或为空

    我读取了一个 Excel 文件来传递某些数据字段的输入 但是当我运行该程序时 某些单元格值返回为 null 某些单元格值返回为空白 实际上 当我打开 Excel 文件时 单元格中没有可用值 如何手动识别 Excel 单元格为空或空白 对于某
  • PHP:为什么只能通过引用传递变量?

    如果您是 PHP 开发人员 您很可能看到过以下通知 注意 在 somefile php 中只有变量应该通过引用传递 在线 xxx 问题广泛处理于只有变量应该通过引用传递 https stackoverflow com questions 4
  • 更新属性文件的更好的类?

    Though java util properties允许读写属性文件 写入时不保留格式 这并不奇怪 因为它与属性文件无关 有没有PropertyFile那里的类 或类似的类 保留注释和空行并更新属性值 它没有比 Apache 的 Comm
  • SQLAlchemy 中的 VALUES 子句

    有没有办法建立一个QuerySQLAlchemy 中的对象相当于 SELECT FROM VALUES 1 2 3 AS sq 从我在文档中看到的 VALUES子句仅出现在与INSERT 现在 这在 SQLAlchemy 中本身就可用 您的
  • 通知通知时发生 TransactionTooLargeException

    我在 android 中录制时有更新时间 我使用 CountDownTimer 并根据通知更新到远程视图 我已经优化了最小的 数据但仍然得到 TransactionTooLargeException public void showNoti
  • 将 DMS 坐标转换为 R 中的十进制

    我有以下 DMS 格式的坐标 我需要将它们转换为十进制 Libraries gt library sp gt library magrittr Latitide Longitude as strings gt lat lt 21d11m24