Проблемы с порядком атрибутов CRS 4326 в R

Я загружаю файл формы с помощью пакета R maptools

Subcat<-readShapeSpatial("Contour500/Catchments500.shp",proj4string = CRS('+init=epsg:4326'))

class(Subcat)
[1] "SpatialPolygonsDataFrame"
attr(,"package")
[1] "sp"

Затем я загружаю другой файл формы

load("Temperature/WCAdj.RData")
class(WcT$Geoloc)
[1] "SpatialPoints"
attr(,"package")
[1] "sp"

Я хочу использовать функцию over из пакета sp

over(WcT$Geoloc,Subcat)

Но когда я запускаю его, я получаю следующую ошибку

Error: identicalCRS(x, y) is not TRUE

Это странно, так как я использовал один и тот же CRS для обоих файлов CRS('+init=epsg:4326'). Я дважды проверил и обнаружил небольшую разницу в порядке атрибутов CRS.

proj4string(Subcat)
[1] "+init=epsg:4326 +proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs +towgs84=0,0,0"

proj4string(WcT$Geoloc)
[1] "+init=epsg:4326 +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0"

Единственная разница заключается в порядке Атрибутов (+ellps, +no_defs и +datum), но все значения одинаковы. Я решил это, снова загрузив Subcat, используя

Subcat<-readShapeSpatial("Contour500/Catchments500.shp",proj4string = CRS("+init=epsg:4326 +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0"))

Однако я хотел знать, есть ли другое решение, поскольку я хочу избежать той же ошибки в будущем, и хотел знать, откуда эта ошибка. Я проверил детали определения CRS в (https://www.nceas.ucsb.edu/~frazier/RSpatialGuides/OverviewCoordinateReferenceSystems.pdf) и в документации пакета SP https://cran.r-project.org/web/packages/sp/sp.pdf , но они не дают слишком много подробностей относительно порядка атрибутов.

У кого-нибудь была такая же проблема?

Кто-нибудь знает, как этого избежать?

На всякий случай

sessionInfo()
R version 3.3.3 (2017-03-06)

other attached packages:
[1] rgeos_0.3-2     maptools_0.8-27 rgdal_0.8-11    sp_1.0-14 

Заранее спасибо!


person Juan Ossa    schedule 06.06.2017    source источник


Ответы (1)


Решение проще, чем я думал, просто обновите все пакеты. Написав автору, он сказал, что иногда при обновлении R старые версии пакетов могут испытывать такие проблемы, поэтому их также необходимо обновить.

person Juan Ossa    schedule 21.05.2018