我试图辨别给定的纬度/经度坐标是否属于特定的美国状态。我使用maps
包来获取状态边界的纬度/经度坐标。我怀疑有一种方法可以询问坐标是否属于每个州所包含的纬度和长值范围,但我还没有想出一个优雅的解决方案。
基本上,这是一种识别点是否属于区域而不必知道区域名称的方法(因为maps
包在命名区域方面非常特殊,例如,苏联),但仍然能够在以后提取区域名称(用于着色等)。
#Example coordinates
points=data.frame(lat=42,long=-100)
#Load US map
library(maps)
states=map_data("state")
#Summarize value of lat and long values for each region
library(plyr)
ddply(states,c("region"),function(x) return(c( range(x$long), range(x$lat) )) )
最后,我希望data.frame
states
有一个最后一列给出true/false
关于这些点是否出现在该地区的信息。因此,在上面的示例中,region=="nebraska"
将true
的所有条目。