<html>
<body>
<font size=3>Clément,<br><br>
this worked like a charm. I did not know that c() works on lists like
this. Always somethign new to learn. <br><br>
Thanks a lot,<br><br>
Mathias<br><br>
<br>
At 12:35 AM 9/28/2009, Clément Calenge wrote:<br><br>
<blockquote type=cite class=cite cite="">
<blockquote type=cite class=cite cite="">I am trying to calculate the
home range overlap for kernel home ranges from the same trajectory but
calculated with different smoothing parameters to compare their
similarty. This means I have two or more objects of type khrud that I
need to combine into one to make them work with the kerneloverlaphr()
function. Is there an easy way to combine two khrud objects or will I
have to rewrite the kerneloverlaphr function?</blockquote><br>
Actually, there is no need to rewrite the kerneloverlaphr function: just
use c() to combine your kud objects (computed using the same grid), give
the elements of the list a name, and define the class of the resulting
list to be c(&quot;khrud&quot;, &quot;khr&quot;).<br>
For example (just copy and paste):<br><br>
## relocations of two animals<br>
chou &lt;- puechabon$locs[puechabon$locs$Name
==&quot;Chou&quot;,c(&quot;X&quot;,&quot;Y&quot;)]<br>
jean &lt;- puechabon$locs[puechabon$locs$Name
==&quot;Jean&quot;,c(&quot;X&quot;,&quot;Y&quot;)]<br><br>
## you need the same grid for all animals, so here, we will the function
kernelUD to compute it,<br>
## but it will not be needed if you already have a grid.<br>
## The smoothing parameter is not important here. We use this code to
compute the<br>
## grid used for the computation of the overlap (the actual value of the
UD is not important<br>
## here)<br>
all.an &lt;- puechabon$locs[ (puechabon$locs$Name
==&quot;Jean&quot;)|(puechabon$locs$Name
==&quot;Chou&quot;),c(&quot;X&quot;,&quot;Y&quot;)]<br>
all.fac &lt;- factor(puechabon$locs$Name[ (puechabon$locs$Name
==&quot;Jean&quot;)|(puechabon$locs$Name ==&quot;Chou&quot;)])<br>
k.all &lt;- kernelUD(all.an, all.fac, grid=200, same4all=TRUE)<br><br>
## Estimate the UD on the grid computed previously (we choose here the
grid k.all[[1]]$UD, but<br>
## we could have chosen k.all[[2]]$UD: they are identical)<br><br>
## for Chou, for example, h=250 m<br>
kchou &lt;- kernelUD(chou, h = 250, grid=k.all[[1]]$UD,
same4all=TRUE)<br><br>
## for Jean, for example, h= 800 m<br>
kjean &lt;- kernelUD(jean, h=800, grid=k.all[[1]]$UD,
same4all=TRUE)<br><br>
## combine the two results:<br>
ktot &lt;- c(kchou, kjean)<br><br>
## give them a name and a class:<br>
names(ktot) &lt;- c(&quot;Chou&quot;,&quot;Jean&quot;)<br>
class(ktot) &lt;- class(kjean)<br><br>
## And compute the overlap:<br>
kerneloverlaphr(ktot)<br><br>
<br>
HTH,<br>
Best wishes,<br><br>
<br>
Clément Calenge<br><br>
-- <br>
Clément CALENGE<br>
Office national de la chasse et de la faune sauvage<br>
Saint Benoist - 78610 Auffargis<br>
tel. (33) 01.30.46.54.14</font></blockquote></body>
</html>