如何将空间点数据合并到 R 中的多边形?

问题描述

我正在尝试在 SpatialPointsDataFrameSpatialpolygonsDataFrame 之间执行空间连接。

我有两组数据,名为 California_shpHouses。他们的信息如下:

 dput(head(California_shp))
structure(list(NAME = 1:6),row.names = c(NA,6L),class = "data.frame")

class(California_shp)
    [1] "SpatialpolygonsDataFrame"
    attr(,"package")
    [1] "sp" 


> dput(head(Houses))
structure(list(houseValue = c(452600L,358500L,352100L,341300L,342200L,269700L),income = c(8.3252,8.3014,7.2574,5.6431,3.8462,4.0368),houseAge = c(41L,21L,52L,52L),rooms = c(880L,7099L,1467L,1274L,1627L,919L),bedrooms = c(129L,1106L,190L,235L,280L,213L),population = c(322L,2401L,496L,558L,565L,413L),households = c(126L,1138L,177L,219L,259L,193L),latitude = c(37.88,37.86,37.85,37.85),longitude = c(-122.23,-122.22,-122.24,-122.25,-122.25)),class = "data.frame")

class(Houses)
    [1] "SpatialPointsDataFrame"
    attr(,"package")
    [1] "sp"

如何使用point-in-polygon操作和mean函数Houses对象合并到California_shp

我已经在 R 中编写并运行了以下代码

library(spatialEco)

library(sp)

head(California_shp@data)
       NAME
1   Alameda
2    Alpine
3    Amador
4     Butte
5 Calaveras
6    Colusa

head(Houses@data)
      houseValue income houseAge rooms bedrooms population households latitude longitude
    1     452600 8.3252       41   880      129        322        126    37.88   -122.23
    2     358500 8.3014       21  7099     1106       2401       1138    37.86   -122.22
    3     352100 7.2574       52  1467      190        496        177    37.85   -122.24
    4     341300 5.6431       52  1274      235        558        219    37.85   -122.25
    5     342200 3.8462       52  1627      280        565        259    37.85   -122.25
    6     269700 4.0368       52   919      213        413        193    37.85   -122.25
    
pts.poly <- point.in.poly(Houses,California_shp)
    
pts.poly
    class       : SpatialPointsDataFrame 
    features    : 20640 
    extent      : -124.35,-114.31,32.54,41.95  (xmin,xmax,ymin,ymax)
    crs         : +proj=longlat +datum=NAD83 +no_defs 
    variables   : 10
    names       : houseValue,income,houseAge,rooms,bedrooms,population,households,latitude,longitude,NAME 
    min values  :      14999,0.4999,1,2,3,-124.35,1 
    max values  :     500001,15.0001,52,39320,6445,35682,6082,41.95,58

不幸的是,它仍然对我没有帮助。我需要改进它们。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)