<div dir="ltr">It works great....thanks Stefan!<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Aug 29, 2016 at 1:23 PM, Blumentrath, Stefan <span dir="ltr"><<a href="mailto:Stefan.Blumentrath@nina.no" target="_blank">Stefan.Blumentrath@nina.no</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hei Alassane,<br>
Can't you just do:<br>
<br>
db.execute sql="UPDATE parcel SET pchng=int((0.25*c_number/par_<wbr>sqf)*100)"<br>
<br>
Cheers,<br>
Stefan<br>
______________________________<wbr>__________<br>
Von: grass-user [<a href="mailto:grass-user-bounces@lists.osgeo.org">grass-user-bounces@lists.<wbr>osgeo.org</a>] im Auftrag von alassane toure [<a href="mailto:atourej@gmail.com">atourej@gmail.com</a>]<br>
Gesendet: Montag, 29. August 2016 20:25<br>
An: GRASS user list<br>
Betreff: [GRASS-user] Fwd: vector attribute calculation in grass python<br>
<span class=""><br>
Dear Moritz & group,<br>
I am a newbi in python programming.  Following Moritz's instructions i added the followings..<br>
<br>
par_sqf=[]<br>
c_number=[]<br>
pchng=[]<br>
<br>
but pchng stayed NULL for all rows (see below)!<br>
</span>[Inline image 2]<br>
<span class="im HOEnZb">Any suggestions how to resolve this?<br>
<br>
Regards,<br>
Alassane<br>
---------- Forwarded message ----------<br>
</span><span class="im HOEnZb">From: alassane toure <<a href="mailto:atourej@gmail.com">atourej@gmail.com</a><mailto:<a href="mailto:atourej@gmail.com">atou<wbr>rej@gmail.com</a>>><br>
Date: Mon, Aug 29, 2016 at 9:27 AM<br>
Subject: vector attribute calculation in grass python<br>
</span><div class="HOEnZb"><div class="h5">To: GRASS user list <<a href="mailto:grass-user@lists.osgeo.org">grass-user@lists.osgeo.org</a><<wbr>mailto:<a href="mailto:grass-user@lists.osgeo.org">grass-user@lists.osgeo.<wbr>org</a>>><br>
<br>
<br>
Group,<br>
I am in the process of developing a python/grass code to calculate an attribute value based on other attributes. The following error comes up:<br>
<br>
NameError: name 'par_sqf' is not defined<br>
<br>
<br>
Here is the code...<br>
<br>
# some predefined variables<br>
###########################<br>
import os<br>
import sys<br>
import subprocess<br>
import shutil<br>
import binascii<br>
import tempfile<br>
import shutil<br>
<br>
import gdal<br>
from gdalconst import *<br>
...<br>
...<br>
grass.run_command('v.rast.<wbr>stats',map='parcel', raster='constr_clean1',method=<wbr>'number',column_prefix='c')<br>
<br>
grass.run_command('v.db.<wbr>addcolumn', map='parcel', columns='par_sqf double precision')<br>
grass.run_command('v.to.db', map='parcel', option='area', columns='par_sqf', unit='feet')<br>
grass.run_command('v.db.<wbr>addcolumn',map='parcel',<wbr>columns='pchng int')<br>
<br>
grass.read_command('v.db.<wbr>select',map='parcel',columns='<wbr>c_number')<br>
grass.read_command('v.db.<wbr>select',map='parcel',columns='<wbr>par_sqf')<br>
pchng = range(len(par_sqf))<br>
for i in range(len(par_sqf)):<br>
    pchng[i]=+int((0.25*c_number[<wbr>i]/par_sqf[i])*100)<br>
<br>
for i in range(len(par_sqf)):<br>
     query="UPDATE parcel SET pchng=" + str(pchng[i]) + " WHERE cat = " + str(i+1)<br>
     grass.write_command("db.<wbr>execute", stdin = query)<br>
<br>
...<br>
...<br>
<br>
Your insight is appreciated.<br>
<br>
Alassane<br>
<br>
<br>
<br>
</div></div></blockquote></div><br></div>