<div dir="ltr"><div><br><br>On Thu, Jun 22, 2017 at 10:53 AM, Moritz Lennert <<a href="mailto:mlennert@club.worldonline.be">mlennert@club.worldonline.be</a>> wrote:<br>><br>> On 21/06/17 22:19, Markus Metz wrote:<br>>><br>>><br>>> On Wed, Jun 21, 2017 at 4:30 PM, Moritz Lennert<br>>> <<a href="mailto:mlennert@club.worldonline.be">mlennert@club.worldonline.be</a> <mailto:<a href="mailto:mlennert@club.worldonline.be">mlennert@club.worldonline.be</a>>> wrote:<br>>>><br>>>><br>>>> On 21/06/17 14:57, Markus Neteler wrote:<br>>>>><br>>>>><br>>>>> On Wed, Jun 21, 2017 at 11:54 AM, Moritz Lennert<br>>>>> <<a href="mailto:mlennert@club.worldonline.be">mlennert@club.worldonline.be</a> <mailto:<a href="mailto:mlennert@club.worldonline.be">mlennert@club.worldonline.be</a>>><br>>><br>>> wrote:<br>>>>>><br>>>>>><br>>>>>> Do we really need v.db.univar ? Does it provide anything else/better<br>>><br>>> than<br>>>>>><br>>>>>> v.univar ?<br>>><br>>><br>>> The main difference between v.univar and v.db.univar is that v.univar<br>>> works with geometries while v.db.univar works with the attribute table.<br>>> If vector geometries share the same category value, or if some vector<br>>> geometries have more than one category value, the results of v.univar<br>>> and v.db.univar for the same column will be different. If you want<br>>> results with category (or class) as unit, use v.db.univar, if you want<br>>> results with vector geometry as unit, use v.univar.<br>><br>><br>> Right. Didn't think about this. So they are actually complementary.<br>><br>[...]<br>><br>> However, in the case of multiple cat values per feature, it seems that v.univar actually reads the attribute once for every geometry/category combination, not only for each feature:<br><br></div>According to the source code, yes.<br><div><br>[...]<br>><br>> I don't know if this is the desired feature or if each geometry should only be taken into account once, whatever its number of categories. I personally would have expected the latter, if we consider v.univar to be geometry-based.<br><br></div><div>If each geometry should be taken into account only once, a corresponding category / attribute value would need to be randomly picked. Therefore I would prefer to consider all categories for each geometry.<br></div><div>><br>> All this definitely needs clearer documentation in the man page. Attached an attempt to amend the two respective man pages. MarkusM, is this correct ? However, the above question concerning v.univar probably should be checked before I commit this.<br><br></div><div>According to the source code, v.univar reads attributes for all categories of a geometry.<br></div><div><br></div><div>v.db.univar uses db.univar, not db.select, that's an error in the existing manual.<br></div><div><br></div><div>I suggest to update the manuals first, then decide if the modules should be modified.<br><br></div><div>Markus M<br></div></div>