анализ точечных паттернов в Spatstat

#r #gis #spatstat #maptools

#r #ГИС #spatstat #maptools

Вопрос:

У меня возникли некоторые проблемы с настройкой моих данных для некоторого анализа шаблонов точек.

Что я хочу сделать: провести анализ шаблонов точек данных об арестах в Нью-Йорке и посмотреть, существует ли пространственная зависимость между арестами и случаями Covid-19.

Что я сделал до сих пор: загруженные данные в виде шейп-файлов

https://data.cityofnewyork.us/City-Government/Borough-Boundaries/tqmj-j8zm (границы почтового индекса)

https://www1.nyc.gov/site/nypd/stats/crime-statistics/citywide-crime-stats.page (данные за год по арестам в Нью-Йорке по почтовому индексу)

Код:

 library(readxl)
library(rgdal) #Brings Spatial Data in R
library(spatstat) # Spatial Statistics
library(lattice) #Graphing
library(maptools)
library(raster)
library(ggplot2)
library(RColorBrewer)
library(broom)

# Load nyc zip code boundary polygon shapefile 
s <- readOGR("/Users/my_name/Documents/fproject/zip","zip")
nyc <- as(s,"owin")

### OGR data source with driver: ESRI Shapefile 
Source: "/Users/my_name/Documents/project/zip", layer: "zip"
with 263 features

# Load nyc arrests point feature shapefile
> s <- readOGR("/Users/my_name/Documents/project/nycarrests/","geo1")

### OGR data source with driver: ESRI Shapefile 
Source: "/Users/my_name/Documents/project/nycarrests", layer: "geo1"
with 103376 features
It has 19 fields

#Converting the dataset into a point pattern
arrests <- as(s,"ppp”) 

### Error in as.ppp.SpatialPointsDataFrame(from) : 
  Only projected coordinates may be converted to spatstat class objects
 

Это дало мне ошибку, указанную выше.

Я знаю, что ошибка связана с тем, что координаты не находятся в декартовых координатах. Итак, мой вопрос:

Как я могу преобразовать свой sp-объект в (проецируемые) декартовы координаты, чтобы преобразовать его в точечный шаблон (точечный процесс Пуассона)?

Комментарии:

1. Можете ли вы упростить свой вопрос, чтобы сделать его более целенаправленным? Это действительно вопрос «как мне спроецировать объект sp?» Вопрос на самом деле не связан с spatstat или с большинством загружаемых вами пакетов.

2. Смотрите spatstat Виньетку пакета в разделе «Обработка шейп-файлов» для получения рекомендаций

Ответ №1:

Вы ищете spTransform .

Вот некоторые примеры данных

 library(raster)
filename <- system.file("external/lux.shp", package="raster")
p <- shapefile(filename)
 

Решение

 utm <- " proj=utm  zone=32  datum=WGS84"
x <- spTransform(p, utm)
x
#class       : SpatialPolygonsDataFrame 
#features    : 12 
#extent      : 266045.9, 322163.8, 5481445, 5563062  (xmin, xmax, ymin, ymax)
#crs         :  proj=utm  zone=32  datum=WGS84  units=m  no_defs 
#variables   : 5
#names       : ID_1,     NAME_1, ID_2,   NAME_2, AREA 
#min values  :    1,   Diekirch,    1, Capellen,   76 
#max values  :    3, Luxembourg,   12,    Wiltz,  312