0

我试图辨别给定的纬度/经度坐标是否属于美国特定的州。我已经使用该maps包来获取州边界的纬度/经度坐标。我怀疑有一种方法可以询问坐标是否在每个州所包含的 lat 和 long 值的范围内,但我还没有找到一个优雅的解决方案。

基本上,这是一种无需知道区域名称就可以识别一个点是否在区域内的方法(因为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.

4

0 回答 0