我正在尝试在R中绘制我的学习区域。到目前为止,我已经下载了人口普查OA边界数据,并且已将属性数据合并到我希望查看的OA中。
总而言之,总共有1,000个OA。我想看看这些OA中只有500个,我有外部数据集。
Land是我的空间多边形数据框,包含1,000s OA。它有一列是OA名称“geocode”。但是,它有它的坐标,因为你运行:
coordinates(land)
它产生所有坐标。
Houseprice是一个包含房价和包含地理编码的列的数据框。
远程代码:
library("sp")
library("GISTools")
library("maptools")
library("spatial")
library("ggplot2")
library("rgdal")
land@data = merge(land@data,houseprice,by.x="geocode",
by.y="geocode",sort=FALSE)
View(land)
这表明我只有500个条目(这就是我想要的)。
plot(land)
这最终将绘制整个1,000个OA,而不仅仅是我想要的500个。
我只需要为仅有500个数据绘制的500个OA做什么? 谢谢你的帮助
答案 0 :(得分:0)
您可以直接在空间数据上使用merge
,因为有一种方法。然后,您只选择添加的列中没有NA的行(在下面的示例中称为my_col
)
在这里,您只修改了属性表,但没有修改几何
# Merge with external dataset
land2 <- merge(land, houseprice,by.x="geocode", by.y="geocode",sort=FALSE, all.x = TRUE)
# Select only rows of interest
land500 <- land2[which(!is.na(land2$my_col)),]
plot(land500)