首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用adehabitatHR获取最小凸面时遇到问题in is.character中的错误(I):缺少'i‘

使用adehabitatHR获取最小凸面时遇到问题in is.character中的错误(I):缺少'i‘
EN

Stack Overflow用户
提问于 2014-06-19 23:07:35
回答 1查看 687关注 0票数 0

我正在尝试使用17个动物的位置数据来创建最小凸多边形。我创建了一个包含两个组件的列表,一个组件是每个动物的id号(我分解了id号),另一个组件是xy位置,类"SpatialPoints“。据我所知,数据的格式与adehabitatHR文档的详细信息相同,但当我去计算MCP时,我得到了一个错误消息:

代码语言:javascript
复制
    Error in is.character(i) : 'i' is missing
    In addition: Warning message:
    In rel[, 1] : j index ignored

这是我到目前为止得到的代码:

代码语言:javascript
复制
    sdata@data = data.frame(sdata@data, v[match(rownames(sdata@data), rownames(v)),])
    sdata2 = sdata[(sdata$'usvsa' == '1'),(1:9)]
    sdata2$lynx<-as.factor(sdata2$lynx) #"lynx" is the name of the id# column
    sdata2=sdata2[-(1:8)]
    sdata2<-as.data.frame(sdata2)

    location=sdata2[-(3)]
    location<-SpatialPoints(location)
    id=sdata2[-(1:2)]
    lynxdata<- list(name= id, relocs=location)

   rel<- lynxdata$relocs
   cp <- mcp(rel[,1], percent=95)

下面是lynxdata列表的摘要:

代码语言:javascript
复制
    > summary(lynxdata)
          Length Class         Mode
   name       1  data.frame    list
   relocs 20623  SpatialPoints S4  

   > class (rel)
   [1] "SpatialPoints"
   attr(,"package")
   [1] "sp"

任何关于我的数据组织可能有什么问题的想法都将不胜感激!谢谢!

下面是我将其转换为数据框时会发生的情况

代码语言:javascript
复制
     lynxdata2<-as.data.frame(lynxdata)
    > head(lynxdata2)
       lynx relocs.x relocs.y
     1  306 605738.8  1644068
     2  306 605504.2  1644478
     3  306 605503.0  1644456
     4  306 605352.8  1647556
     5  306 605437.8  1648239
     6  306 605353.8  1648314
     > cp <- mcp(lynxdata2[,1], percent=95)
     Error in mcp(lynxdata2[, 1], percent = 95) : 
     xy should be of class SpatialPoints
EN

回答 1

Stack Overflow用户

发布于 2014-06-21 01:47:15

我假设您正在尝试从rel中提取x值?出于某种奇怪的原因,SpatialPoints类只允许按行设置子集,而不允许按列设置子集。这就是为什么我们得到了那个特殊的错误。提取数据的一种方法是将其转换为data.frame,然后提取列。因此,您可以将最后一行替换为

代码语言:javascript
复制
cp <- mcp(as.data.frame(rel)[,1], percent=95)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24309953

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档