title: Creating ppp objects with lapply (package spatstat)
body: <p>My ultimate goal is to calculate Clark-Evans-Index (<code>clarkevans.test</code>) for a list of data frames using package spatstat.</p>
  
  <p>So I have a list of my point data:</p>
  
  <pre><code>points.li &lt;- list(structure(list(x.n = c(-1.37977544977995, 0.0787053126116266, 
  -6.50583075192879, -9.17021249875416, -19.4146851390704, -22.7380870106472, 
  -20.3267566111816, -15.7328116296655, -8.74750043303314, -11.8963575795747
  ), y.n = c(13.1276911114957, 2.22311850078447, 9.48873515598742, 
  2.7986686485412, 2.56632386092958, -0.757078010647191, 6.88269379207495, 
  11.5304629645448, 19.131978467755, 28.8757897612883)), row.names = 1098:1107, class = "data.frame", .Names = c("x.n", 
  "y.n")), structure(list(x.n = c(0.104714438623701, 1.93357872460516, 
  1.51117985822383, 4.47756948027361, 0.710996014054978, -0.727469791776916, 
  0.694499984379773, 2.88088318987335, -5.90066975026119, -11.3699018974284
  ), y.n = c(-5.99908617093835, -9.09677268682439, -12.3075722803524, 
  -16.7105167948009, -16.2844860117843, -13.8809505330886, -19.88787745768, 
  -20.4985490229505, -14.9797228445106, -17.1780479345837)), row.names = 108:117, class = "data.frame", .Names = c("x.n", 
  "y.n")))
  
  &gt; points.li
  [[1]]
                x.n       y.n
  1098  -1.37977545 13.127691
  1099   0.07870531  2.223119
  1100  -6.50583075  9.488735
  1101  -9.17021250  2.798669
  1102 -19.41468514  2.566324
  1103 -22.73808701 -0.757078
  1104 -20.32675661  6.882694
  1105 -15.73281163 11.530463
  1106  -8.74750043 19.131978
  1107 -11.89635758 28.875790
  
  [[2]]
              x.n        y.n
  108   0.1047144  -5.999086
  109   1.9335787  -9.096773
  110   1.5111799 -12.307572
  111   4.4775695 -16.710517
  112   0.7109960 -16.284486
  113  -0.7274698 -13.880951
  114   0.6945000 -19.887877
  115   2.8808832 -20.498549
  116  -5.9006698 -14.979723
  117 -11.3699019 -17.178048
  </code></pre>
  
  <p>and a list of the plot coordinates:</p>
  
  <pre><code>ref.li &lt;- list(structure(list(x.ref = c(-51.957519, -44.640527, 24.976003, 
  17.659011), y.ref = c(39.756418, -29.860112, -22.54312, 47.07341
  )), class = "data.frame", row.names = c(NA, -4L), .Names = c("x.ref", 
  "y.ref")), structure(list(x.ref = c(15.613798, -52.306902, -35.372372, 
  32.548328), y.ref = c(40.306747, 23.372217, -44.548483, -27.613953
  )), class = "data.frame", row.names = c(NA, -4L), .Names = c("x.ref", 
  "y.ref")))
  
  &gt; ref.li
  [[1]]
        x.ref     y.ref
  1 -51.95752  39.75642
  2 -44.64053 -29.86011
  3  24.97600 -22.54312
  4  17.65901  47.07341
  
  [[2]]
        x.ref     y.ref
  1  15.61380  40.30675
  2 -52.30690  23.37222
  3 -35.37237 -44.54848
  4  32.54833 -27.61395
  </code></pre>
  
  <p>I created a list of <code>owin</code> objects:</p>
  
  <pre><code>library(spatstat)
  bound.li &lt;- lapply(ref.li, function(x) {owin(poly = list(x = x$x.ref, y = x$y.ref))})
  
  &gt; bound.li
  [[1]]
  window: polygonal boundary
  enclosing rectangle: [-51.95752, 24.976] x [-29.86011, 47.07341] units
  
  [[2]]
  window: polygonal boundary
  enclosing rectangle: [-52.3069, 32.54833] x [-44.54848, 40.30675] units
  </code></pre>
  
  <p>And now I'd like to create the <code>ppp</code> objects:</p>
  
  <pre><code>pattern.li &lt;- lapply(points.li, function(x) {ppp(x$x.n, x$y.n, window=bound.li)})
  </code></pre>
  
  <p>resulting in:</p>
  
  <pre><code>Error in verifyclass(window, "owin") : 
    argument ‘window’ is not of class ‘owin’
  </code></pre>
  
  <p>I don't know if the problem is using a list of owin objects or my incorrect use of lapply with the ppp function as I need to refer to two lists here but don't know how. Any hint how to solve this?</p>
  
  <p>(<em>edit</em>) I also tried </p>
  
  <pre><code>mapply(function(x, y) {ppp(x$x.n, x$y.n, window=y)}, x=points.li, y=bound.li)
  </code></pre>
  
  <p>but that does not return a list of ppp objects..</p>