Hello Mathieu,

I cannot believe it!! I have tried adding the names, with less layers, and
it didn't work either, so I guessed that was not the problem. I guess I have
others problems too. But now it does work! I'm amazed. I'm sorry you lost so
much time. I deeply thank you.

Yes. the second and third columns were the coordinates, I apologize, I
thought I sent you a file with the coordinates only. And about falling into
the water, they must do that! it's a marine species.

Thank you very very much Mathieu,

Consuelo

-------------
Consuelo Hermosilla
PhD student
Departamento de Ecología y Biología Animal
Departamento de Bioquímica, Genética e Inmunología, Área de Genética
Facultad de Ciencias del Mar
Campus de As Lagoas-Marcosende
Universidad de Vigo
36310 Vigo
SPAIN
Mobile: +34 692 633 298

oooO
(     ) Oooo
   (   (     )
  _)    )  /
        (_/

Stop Gaza Massacre


On Wed, Apr 28, 2010 at 5:11 AM, Mathieu Basille <
basille@biomserv.univ-lyon1.fr> wrote:

> Wow, this one gave me a real hard time, especially considering how easy the
> solution was.
>
> In brief, you have to specify names in the list, in the as.kasc function.
> Otherwise, none of the layers have actually names, which induces a lot of
> problems afterwards.
>
> The fix is quite easy then. I took also some the liberty to clean the code
> at different places:
>
> library(adehabitat)
>
> chl <- import.asc("chl-box_qt.asc")
> sst <- import.asc("sst-box_QT.asc")
> dep <- import.asc("dep-box_QT.asc")
> euph <- import.asc("euph-box_QT.asc")
> OX0 <- import.asc("OX0-box_QT.asc")
> OX200 <- import.asc("OX200-box_QT.asc")
> OX50 <- import.asc("OX50-box_QT.asc")
> P0 <- import.asc("P0-box_QT.asc")
> P100 <- import.asc("P100-box_QT.asc")
> P125 <- import.asc("P125-box_QT.asc")
> P150 <- import.asc("P150-box_QT.asc")
> P200 <- import.asc("P200-box_QT.asc")
> pre <- import.asc("pre-box_QT.asc")
>
> # The problem was here:
> env_maps <- as.kasc(list(chl = chl, sst = sst, dep = dep, euph = euph, OX0
> = OX0, OX200 = OX200, OX50 = OX50, P0 = P0, P100 = P100, P125 = P125, P150 =
> P150, P200 = P200, pre = pre))
>
> # You forgot to save the output of this, but in your case, that was not
> # a problem
> env_maps <- managNAkasc(env_maps)  # just to check
>
> presence <- read.csv("presence5.csv")
> # I assumed that the second and third columns give X-Y coordinates. But
> # it is somehow weird since many of them fall in the water -- assuming
> # it's islands and water
> octopus.hab <- data2enfa(env_maps, presence[, 2:3])
>
>
> pca.octopus <- dudi.pca(octopus.hab$tab, scannf = FALSE)
>
>
> Hope this helps,
>
> Cheers,
> Mathieu.
>
>
> Consuelo Hermosilla a écrit :
>
>> Dear Mathieu,
>>
>>
>> Thanks for your quick reply!!! :)
>>
>> I thought that too, but then, why I'm able to plot the imported map? It
>> makes no sense, I wouldn't be able to plot it if there was an error there,
>> would I?
>>
>> This was my code:
>>
>> library(adehabitat)
>>
>> chl= import.asc("chl-box_qt.asc", type ="numeric")
>> sst = import.asc("sst-box_QT.asc", type ="numeric")
>> dep = import.asc("dep-box_QT.asc", type ="numeric")
>> euph = import.asc("euph-box_QT.asc", type ="numeric")
>> OX0 = import.asc("OX0-box_QT.asc", type ="numeric")
>> OX200 = import.asc("OX200-box_QT.asc", type ="numeric")
>> OX50 = import.asc("OX50-box_QT.asc", type ="numeric")
>> P0 = import.asc("P0-box_QT.asc", type ="numeric")
>> P100 = import.asc("P100-box_QT.asc", type ="numeric")
>> P125 = import.asc("P125-box_QT.asc", type ="numeric")
>> P150 = import.asc("P150-box_QT.asc", type ="numeric")
>> P200 = import.asc("P200-box_QT.asc", type ="numeric")
>> pre = import.asc("pre-box_QT.asc", type ="numeric")
>>
>> env_maps = as.kasc(list(chl, sst, dep, euph, OX0, OX200, OX50, P0, P100,
>> P125, P150, P200, pre))
>>
>> managNAkasc (env_maps)  # just to check
>> presence <- read.csv("presence.csv")
>> octopus.hab <- data2enfa(env_maps, presence)
>> pca.octopus <- dudi.pca(octopus.hab$tab, scannf=FALSE)
>>
>> Can I attach files? How do you want me to provide data?
>>
>> Consuelo
>>
>> -------------
>> Consuelo Hermosilla
>> PhD student
>> Departamento de Ecología y Biología Animal
>> Departamento de Bioquímica, Genética e Inmunología, Área de Genética
>> Facultad de Ciencias del Mar
>> Campus de As Lagoas-Marcosende
>> Universidad de Vigo
>> 36310 Vigo
>> SPAIN
>> Mobile: +34 692 633 298
>>
>> oooO
>> (     ) Oooo
>>   (   (     )
>>  _)    )  /
>>        (_/
>>
>> Stop Gaza Massacre
>>
>>
>> On Tue, Apr 27, 2010 at 11:31 PM, Mathieu Basille <
>> basille@biomserv.univ-lyon1.fr <mailto:basille@biomserv.univ-lyon1.fr>>
>> wrote:
>>
>>    Dear Consuelo,
>>
>>    I guess the error just propagates from the initial import, and has
>>    nothing to do with dudi.pca (which is by the way from the ade4
>>    package -- not directly related to adehabitat).
>>
>>    Your approach otherwise seems (quite) OK. Unfortunately, you didn't
>>    provide enough details to check. Could you provide the whole code,
>>    with possibly some data, so that we can reproduce the problem?
>>
>>    Cheers,
>>    Mathieu.
>>
>>
>>
>>    Consuelo Hermosilla a écrit :
>>
>>        Hi folks,
>>
>>        I'm trying to implement an ecological niche factor analysis with
>>        octopus but
>>        I have some problems. I think it is related to the fact I have
>>        No-data
>>        values. Since it's a marine species, I have land areas where I
>>        have no-data
>>        values. Can I have grids with no-data values?
>>
>>        The thing is I'm able to import the ascii grid (using
>>        import.asc) and I'm
>>        even able to plot it (and see the image), so I guessed I have no
>>        problems
>>        with the no-data values. If I checked the grid, I got this:
>>
>>        str(chl)
>>         asc [1:1214, 1:761] NA NA NA NA NA NA NA NA NA NA ...
>>         - attr(*, "xll")= num -18.6
>>         - attr(*, "yll")= num 16.7
>>         - attr(*, "cellsize")= num 0.05
>>         - attr(*, "type")= chr "numeric"
>>
>>        It looks wrong, but it's OK since my first values are indeed NA.
>>        In fact,
>>        besides the fact I'm able to plot it, I can calculate grid means
>>        and other
>>        stats, so I think the problem is not here. Then, when I grouped
>>        all the
>>        grids (with the as.kasc function), I got this:
>>
>>        str(env_maps)
>>        Classes ?kasc? and 'data.frame':        923854 obs. of  13
>>        variables:
>>         $ : num  NA NA NA NA NA NA NA NA NA NA ...
>>         $ : num  NA NA NA NA NA NA NA NA NA NA ...
>>         $ : num  NA NA NA NA NA NA NA NA NA NA ...
>>         $ : num  NA NA NA NA NA NA NA NA NA NA ...
>>         $ : num  NA NA NA NA NA NA NA NA NA NA ...
>>         $ : num  NA NA NA NA NA NA NA NA NA NA ...
>>         $ : num  NA NA NA NA NA NA NA NA NA NA ...
>>         $ : num  NA NA NA NA NA NA NA NA NA NA ...
>>         $ : num  NA NA NA NA NA NA NA NA NA NA ...
>>         $ : num  NA NA NA NA NA NA NA NA NA NA ...
>>         $ : num  NA NA NA NA NA NA NA NA NA NA ...
>>         $ : num  NA NA NA NA NA NA NA NA NA NA ...
>>         $ : num  NA NA NA NA NA NA NA NA NA NA ...
>>         - attr(*, "cellsize")= num 0.05
>>         - attr(*, "xll")= num -18.6
>>         - attr(*, "yll")= num 16.7
>>         - attr(*, "ncol")= int 1214
>>         - attr(*, "nrow")= int 761
>>         - attr(*, "type")= chr  "numeric" "numeric" "numeric" "numeric"
>> ...
>>
>>        Still looks wrong, but it shouldn't be. Then, I proceed with the
>>        data2enfa
>>        function, that seemed to work. But in the next step, when I was
>>        calculating
>>        the dudi.pca, it failed, with this error:
>>
>>        Error in `rownames<-`(`*tmp*`, value = c("1", "2", "3", "4",
>>        "5", "6",  :
>>         attempt to set rownames on object with no dimensions
>>
>>        I checked the data2enfa result and I got this:
>>
>>        List of 4
>>         $ tab  :'data.frame':  923854 obs. of  0 variables
>>         $ pr   : int [1:923854] 0 0 0 0 0 0 0 0 0 0 ...
>>         $ index: int [1:923854] 1 2 3 4 5 6 7 8 9 10 ...
>>         $ attr :Class 'mapattr'  atomic [1:1] 0
>>         .. ..- attr(*, "xll")= num -18.6
>>         .. ..- attr(*, "yll")= num 16.7
>>         .. ..- attr(*, "cellsize")= num 0.05
>>         .. ..- attr(*, "nrow")= int 761
>>         .. ..- attr(*, "ncol")= int 1214
>>         - attr(*, "class")= chr "dataenfa"
>>
>>        When I check the $tab, I got this:
>>
>>        octopus.hab$tab
>>        data frame with 0 columns and 923854 rows*
>>
>>        *And I have no idea of what's wrong.... any ideas? do you
>>        suggest anything?
>>        Why do I have 0 columns and 923854 rows? Is that possible? Can
>>        the data2enfa
>>        funcion deal with no-data values?
>>
>>        I tried the magagNAkasc, but doesn't work...
>>
>>        managNAkasc (env_maps)
>>        Raster map of class "kasc":
>>        Cell size:  0.05
>>        Number of rows:  761
>>        Number of columns:  1214
>>
>>        Variables measured:
>>        1. : numeric
>>        Error in .subset2(x, i, exact = exact) :
>>         attempt to select less than one element
>>
>>        I have tried in Windows Vista and Linux (both R 2.10.1 and
>>        adehabitat v
>>        1.83.
>>
>>        I'd appreciate any help!!
>>
>>        Thanks!!!
>>
>>        Consuelo
>>
>>               [[alternative HTML version deleted]]
>>
>>        _______________________________________________
>>        R-sig-Geo mailing list
>>        R-sig-Geo@stat.math.ethz.ch <mailto:R-sig-Geo@stat.math.ethz.ch>
>>
>>        https://stat.ethz.ch/mailman/listinfo/r-sig-geo
>>
>>
>>    --
>>    ~$ whoami
>>    Mathieu Basille, Post-Doc
>>
>>    ~$ locate
>>    Laboratoire d'Écologie Comportementale et de Conservation de la Faune
>>    + Centre d'Étude de la Forêt
>>    Département de Biologie
>>    Université Laval, Québec
>>
>>    ~$ info
>>    http://ase-research.org/basille
>>
>>    ~$ fortune
>>    ``If you can't win by reason, go for volume.''
>>    Calvin, by Bill Watterson.
>>
>>
>>
> --
>
> ~$ whoami
> Mathieu Basille, Post-Doc
>
> ~$ locate
> Laboratoire d'Écologie Comportementale et de Conservation de la Faune
> + Centre d'Étude de la Forêt
> Département de Biologie
> Université Laval, Québec
>
> ~$ info
> http://ase-research.org/basille
>
> ~$ fortune
> ``If you can't win by reason, go for volume.''
> Calvin, by Bill Watterson.
>

	[[alternative HTML version deleted]]

