Foro de debate

Error usando el paquete dsm

Error usando el paquete dsm

de Milagros Antun -
Número de respuestas: 0

Hola, intento utilizar el paquete dsm,(library(Distance); library(dsm)) , siguiendo el Anexo de Miller (http://onlinelibrary.wiley.com/store/10.1111/2041-210X.12105/asset/supinfo/mee312105-sup-0001-AppendixS1.pdf?v=1&s=ced953b57365e5eb5753f0ad76dcc02c26918736 ). 

 
Trabajo con tres dataframes, cuyas str se detallan:

1) segdata:
 data.frame':193 obs. of  17 variables:
 $ Sample.Lab    : int  1 2 3 4 5 6 7 8 9 10 ...
 $ Transect.Label: Factor w/ 56 levels "1","100","101",..: 36 36 36 36 36 20 56 52 52 52 ...
 $ Effort        : int  1800 1800 1800 1800 1800 1800 1800 1800 1800 1800 ...
 $ x             : num  4443636 4437817 4442085 4440564 4439117 ...
 $ y             : num  5267395 5271579 5268309 5269266 5270337 ...
 $ ID_ESTRATO    : int  3 2 3 2 2 2 2 2 4 2 ...
 $ NDVI2010      : num  1813 1816 1804 1807 1816 ...
 $ NDVI2011      : num  2007 1943 1935 1894 1893 ...
 $ NDVI2012      : num  1705 1736 1686 1691 1729 ...
 $ NDVI2013      : num  2206 2305 2145 2211 2279 ...
 $ PROM_NDVI     : num  2218 2313 2148 2206 2275 ...
 $ DIST_PUEST    : num  959 455 2652 3194 1394 ...
 $ DIST_CUADR    : num  1482.1 137.5 549.9 62.9 514.8 ...
 $ DIST_MOLIN    : num  794 5022 2519 4156 5715 ...
 $ X_4326        : num  -63.7 -63.8 -63.7 -63.7 -63.7 ...
 $ Y_4326        : num  -42.7 -42.7 -42.7 -42.7 -42.7 ...
 $ O.KM2_2015    : num  64.1 34.6 43.4 44.4 46.6 ...
 
2) obsdata:
'data.frame':399 obs. of  6 variables:
 $ Especie.    : Factor w/ 1 level "Oveja": 1 1 1 1 1 1 1 1 1 1 ...
 $ size        : int  3 1 5 18 6 2 6 3 5 2 ...
 $ distance    : int  210 178 65 210 250 37 72 350 380 320 ...
 $ object      : int  1 2 5 7 8 13 14 20 30 31 ...
 $ Sample.Label: int  26 26 30 30 30 29 28 27 31 31 ...
 $ Effort      : num  1.8 1.8 1.8 1.8 1.8 1.8 1.8 1.8 1.8 1.8 ... 
 
3)disdata
'data.frame':399 obs. of  7 variables:
 $ x       : num  4418278 4418667 4421229 4421308 4421308 ...
 $ y       : num  5299140 5298846 5295963 5295805 5295805 ...
 $ Especie.: Factor w/ 1 level "Oveja": 1 1 1 1 1 1 1 1 1 1 ...
 $ size    : int  3 1 5 18 6 2 6 3 5 2 ...
 $ distance: int  210 178 65 210 250 37 72 350 380 320 ...
 $ object  : int  1 2 5 7 8 13 14 20 30 31 ...
 $ Effort  : num  1.8 1.8 1.8 1.8 1.8 1.8 1.8 1.8 1.8 1.8 ...
 
 
Luego de ajustar una función de detección con el script: 
 
hr.model <-ds(distdata,truncation="10%",transect ="line",dht.group= FALSE,key ="hr", convert.units = 1,adjustment =NULL) 

Intento ajustar mis datos a un modelo aplicando gams por medio del paquete dsm, corriendo el siguiente script:

mod1<-dsm(count ~ s(x,y, k=6), ddf.obj=hr.model, segdata, obsdata, engine = "gam",convert.units = 1, family = quasipoisson(link = "log"),group = FALSE,gamma = 1.4,control = list(keepData = TRUE),availability = 1,segment.area = NULL, weights = NULL)

Aquí es cuando tengo inconvenientes, ya que me sale el error:

Error in fix.by(by.x, x) : 'by' must specify a uniquely valid column

Alguien podría ayudarme a resolverlo?? Desde ya muchas gracias!!!