<div dir="ltr">You can easily do that using SQL.<div><br></div><div>Since QGIS 2.14 you can create Virtual Layers based on SQL Queries to load layers on your canvas. I believe using the following query will work:</div><div><br></div><div><div>select t.origin_gid, t.target_gid, t.target_value, t.geometry</div><div>FROM</div><div>(Select f.gid as origin_gid, g.gid as target_gid, g.value as target_value, g.geometry</div><div>FROM layer_1 as f, layer_1 as g</div><div>WHERE f.gid >= g.gid and st_within(g.geometry, st_buffer(f.geometry, f.value))</div><div>ORDER BY f.gid, g.value ASC) as t</div><div>group by t.origin_gid</div></div><div><br></div><div>Alexandre Neto</div></div><br><div class="gmail_quote"><div dir="ltr">Niccolò Marchi <<a href="mailto:sciurusurbanus@hotmail.it">sciurusurbanus@hotmail.it</a>> escreveu no dia sexta, 12/08/2016 às 12:24:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">





<div lang="IT">
<div>
<p>Hi all,</p>
<p>I have a set of projected spatial points (id, x, y, dist, value) that needs to be filtered. For each point I have to find the other ones falling within a variable distance. For each selection, I need only the one with the maximum value or, if duplicated,
 keeping just one.</p>
<p>I tried to check the available tools and I found out what follows:<u></u><u></u></p>
<p style="margin-left:36.0pt"><u></u><span>-<span style="font:7.0pt "Times New Roman"">         
</span></span><u></u>A simpler possibility would be to use the “Select by expression”, but I’m not that familiar with the syntax and I ended up with [clearly non-working]: CASE WHEN distance($currentfeature)<”dist” THEN max(“value”) END</p>
<p style="margin-left:36.0pt"><u></u><span>-<span style="font:7.0pt "Times New Roman"">         
</span></span><u></u>Another possibility would be to improve the following R code, available online (thanks to the author)</p>
<p>Any (R, Python, else) suggestion?</p>
<pre><span><u></u> <u></u></span></pre>
<pre><span><u></u> <u></u></span></pre>
<pre><span>##Layer=vector</span><span><u></u><u></u></span></pre>
<pre><span>##ID=Field Layer</span><span><u></u><u></u></span></pre>
<pre><span>##distance= Field Layer</span><span><u></u><u></u></span></pre>
<pre><span>##Output= output vector</span><span><u></u><u></u></span></pre>
<pre><span>library</span><span>(</span><span>rgeos</span><span>)</span><span><u></u><u></u></span></pre>
<pre><span>library</span><span>(</span><span>sp</span><span>)</span><span><u></u><u></u></span></pre>
<pre><span>library</span><span>(</span><span>spdep</span><span>)</span><span><u></u><u></u></span></pre>
<pre><span><u></u> <u></u></span></pre>
<pre><span>coordi </span><span><-</span><span> </span><span>as</span><span>.</span><span>matrix</span><span>(</span><span>coordinates</span><span>(</span><span>Layer</span><span>))</span><span><u></u><u></u></span></pre>
<pre><span>tram_nb </span><span><-</span><span> dnearneigh</span><span>(</span><span>coordi</span><span>,</span><span> d1 </span><span>=</span><span> </span><span>0</span><span>,</span><span> d2 </span><span>=</span><span> distance</span><span>,</span><span>row</span><span>.</span><span>names</span><span>=</span><span>Layer</span><span>[[</span><span>ID</span><span>]])</span><span><u></u><u></u></span></pre>
<pre><span>tram_nb</span><span><-</span><span>as</span><span>.</span><span>data</span><span>.</span><span>frame</span><span>(</span><span>card</span><span>(</span><span>tram_nb</span><span>))</span><span><u></u><u></u></span></pre>
<pre><span>tram</span><span><-</span><span>cbind</span><span>(</span><span>as</span><span>.</span><span>vector</span><span>(</span><span>Layer</span><span>[[</span><span>ID</span><span>]]),</span><span> tram_nb</span><span>)</span><span><u></u><u></u></span></pre>
<pre><span>Coord</span><span><-</span><span>cbind</span><span>()</span><span><u></u><u></u></span></pre>
<pre><span>n</span><span><-</span><span>length</span><span>(</span><span>Layer</span><span>[[</span><span>ID</span><span>]])</span><span><u></u><u></u></span></pre>
<pre><span>for</span><span>(</span><span>i </span><span>in</span><span> </span><span>1</span><span>:</span><span>n</span><span>){</span><span><u></u><u></u></span></pre>
<pre><span>   </span><span>if</span><span> </span><span>(</span><span>tram</span><span>[</span><span>i</span><span>,</span><span>2</span><span>]!=</span><span>0</span><span> </span><span>){</span><span> </span><span>Coord</span><span> </span><span><-</span><span>rbind</span><span>(</span><span>Coord</span><span>,</span><span>cbind</span><span>(</span><span>coordi</span><span>[</span><span>i</span><span>,</span><span>1</span><span>],</span><span> coordi</span><span>[</span><span>i</span><span>,</span><span>2</span><span>],</span><span>as</span><span>.</span><span>vector</span><span>(</span><span>Layer</span><span>[[</span><span>ID</span><span>]])[</span><span>i</span><span>]))</span><span><u></u><u></u></span></pre>
<pre><span>}</span><span><u></u><u></u></span></pre>
<pre><span>}</span><span><u></u><u></u></span></pre>
<pre><span>x</span><span><-</span><span>as</span><span>.</span><span>numeric</span><span>(</span><span>Coord</span><span>[,</span><span>1</span><span>])</span><span><u></u><u></u></span></pre>
<pre><span>y</span><span><-</span><span>as</span><span>.</span><span>numeric</span><span>(</span><span>Coord</span><span>[,</span><span>2</span><span>])</span><span><u></u><u></u></span></pre>
<pre><span>X</span><span><-</span><span>cbind</span><span>(</span><span>x</span><span>,</span><span>y</span><span>)</span><span><u></u><u></u></span></pre>
<pre><span>matrix</span><span><-</span><span>as</span><span>.</span><span>matrix</span><span>(</span><span>X</span><span>)</span><span><u></u><u></u></span></pre>
<pre><span>matrix</span><span><-</span><span>SpatialPointsDataFrame</span><span>(</span><span>matrix</span><span>,</span><span>as</span><span>.</span><span>data</span><span>.</span><span>frame</span><span>(</span><span>Coord</span><span>),</span><span>proj4string</span><span>=</span><span>CRS</span><span>(</span><span>Layer</span><span>))</span><span><u></u><u></u></span></pre>
<pre><span>Output</span><span>=</span><span>matrix</span></pre>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Thank you in advance for your help!</p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">All the best,</p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Nic</p>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Times New Roman",serif"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Times New Roman",serif"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Times New Roman",serif"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Times New Roman",serif"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Times New Roman",serif"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Times New Roman",serif"><u></u> <u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:12.0pt"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Times New Roman",serif"><u></u> <u></u></span></p>
</div>
</div>

_______________________________________________<br>
Qgis-user mailing list<br>
<a href="mailto:Qgis-user@lists.osgeo.org" target="_blank">Qgis-user@lists.osgeo.org</a><br>
List info: <a href="http://lists.osgeo.org/mailman/listinfo/qgis-user" rel="noreferrer" target="_blank">http://lists.osgeo.org/mailman/listinfo/qgis-user</a><br>
Unsubscribe: <a href="http://lists.osgeo.org/mailman/listinfo/qgis-user" rel="noreferrer" target="_blank">http://lists.osgeo.org/mailman/listinfo/qgis-user</a></blockquote></div><div dir="ltr">-- <br></div><div data-smartmail="gmail_signature"><div dir="ltr"><div>Alexandre Neto</div><div>---------------------</div><div>@AlexNetoGeo</div><div><a href="http://sigsemgrilhetas.wordpress.com">http://sigsemgrilhetas.wordpress.com</a></div><a href="http://gisunchained.wordpress.com">http://gisunchained.wordpress.com</a><br></div></div>