创建原点范围时尝试创建空间点变量时出错



我正在尝试创建空间点变量,以便R将列识别为地理坐标。代码和错误消息如下所示。我认为这可能与我的坐标是Easting&北向坐标WGS 84而不是通常的长/纬度?如有任何帮助,我们将不胜感激。

大象.all.sp&lt-空间点(大象[c(GPS.E,GPS.S(](
h中的错误(simpleError(msg,call((:在为函数"坐标"选择方法时评估参数"obj"时出错:选择了未定义的列

大象.all.sp&lt-空间点(大象[c(GPS.S,GPS.E(,](
本地错误(obj,…(:无法从非数字矩阵导出坐标

Eastings和Northings应该不是问题,R应该理解每种格式。你好像有两个错误。在第一行中,您缺少引号:

elephant.all.sp<-SpatialPoints(elephant[c("GPS.E","GPS.S")])

使用括号表示法从数据帧中提取。帧需要一个文本向量。未报价仅在使用$时有效,例如elephant$GPS.E

在第二行中,您得到了一个强制错误。R理解你给SpatialPoints((一个充满文本的矩阵,它不理解如何将其转化为数字,然后转化为坐标。这很可能是因为您调用";"GPS.E";以及";GPS;而不是列。这是因为您将c("GPS.E","GPS.S")放在括号中间的逗号之前。正确的形式应该是:

elephant.all.sp<-SpatialPoints(elephant[,c("GPS.S","GPS.E")])

请注意,当括号中没有逗号时,R将给定的值视为列索引(在data.frames中(,这使得我的答案中的两行是等效的。

最新更新