Skip to content

Commit aa039cb

Browse files
author
cfarmer
committedMay 25, 2009
fix basic statistics calculation ( mean no longer always 0.00! )
git-svn-id: http://svn.osgeo.org/qgis/trunk/qgis@10848 c8812cc2-4d05-0410-92ff-de0c093fc19c

File tree

1 file changed

+10
-13
lines changed

1 file changed

+10
-13
lines changed
 

‎python/plugins/fTools/tools/doVisual.py

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -174,11 +174,11 @@ def basic_statistics( self, vlayer, myField ):
174174
fields = vprovider.fields()
175175
index = vprovider.fieldNameIndex( myField )
176176
feat = QgsFeature()
177-
sumVal = 0
178-
meanVal = 0
179-
stdVal = 0
180-
cvVal = 0
181-
nVal = 0
177+
sumVal = 0.0
178+
meanVal = 0.0
179+
stdVal = 0.0
180+
cvVal = 0.0
181+
nVal = 0.0
182182
values = []
183183
first = True
184184
nFeat = vprovider.featureCount()
@@ -196,20 +196,17 @@ def basic_statistics( self, vlayer, myField ):
196196
if value < minVal: minVal = value
197197
if value > maxVal: maxVal = value
198198
values.append( value )
199-
sumVal = sumVal + value
199+
sumVal = float( sumVal + value )
200200
nElement += 1
201201
self.emit( SIGNAL( "runStatus(PyQt_PyObject)" ), nElement )
202202
nVal= float( len( values ) )
203-
print "to here"
204-
if not nVal > 0.00:
205-
print "then here"
203+
if nVal > 0.00:
206204
meanVal = float( sumVal ) / nVal
207205
if not meanVal == 0.00:
208206
for val in values:
209-
stdVal += ( ( val - meanVal ) * ( val - meanVal ) )
210-
print "finally here"
211-
stdVal = math.sqrt( stdVal / nVal )
212-
cvVal = stdVal / meanVal
207+
stdVal += float( ( val - meanVal ) * ( val - meanVal ) )
208+
stdVal = float( math.sqrt( stdVal / nVal ) )
209+
cvVal = float( stdVal / meanVal )
213210
lstStats = []
214211
lstStats.append( "Mean : " + unicode( meanVal ) )
215212
lstStats.append( "StdDev : " + unicode( stdVal ) )

0 commit comments

Comments
 (0)
Please sign in to comment.