#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