首页 > 解决方案 > shp 文件创建一个新列

问题描述

总新手在这里(提前感谢!)

在我的名为“shape”的 shp 文件中,有一个名为“RD_TYPE”的列,它显示了从 1 到 5 的道路类型。

我想制作一个简单的表格,从名为 "RD_TYPE" 的列中计算每种类型的道路有多少项目:

count_rd_type <- shape %>%
  group_by(RD_TYPE) %>%
  count() 

因此,当我这样做时,我的表已创建,但随后我看到一个名为“几何”的附加列,其坐标在我的原始数据集“形状”中不存在。有人可以向我解释这是如何工作的吗?

我的结果截图

非常感谢 :)

标签: rgisshapefilesf

解决方案


geometry列包含(惊喜,惊喜)道路的几何形状 - 意味着您的道路的矢量表示(起点,终点和中间的每个路段的坐标)。

如果您觉得它多余,您可以通过 删除它sf::st_drop_geometry()

因此,在您的用例中,请考虑以下代码:

count_rd_type <- shape %>%
  group_by(RD_TYPE) %>%
  count() %>%
  sf::st_drop_geometry()

class(count_rd_type) # this will be plain old data.frame, not the special sf kind

推荐阅读