Velocity Reviews > sum function

# sum function

mike20007@gmail.com
Guest
Posts: n/a

 10-04-2012
Hi All,

I am new to python and am getting the data from hbase.
I am trying to do sum on the column as below

scanner = client.scannerOpenWithStop("tab", "10", "1000", ["cf:col1"])
total = 0.0
r = client.scannerGet(scanner)
while r:
for k in (r[0].columns):
total += float(r[0].columns[k].value)
r = client.scannerGet(scanner)

print total

Do you know of better (faster) way to do sum?

Thanks

Ian Kelly
Guest
Posts: n/a

 10-04-2012
On Thu, Oct 4, 2012 at 2:52 PM, <(E-Mail Removed)> wrote:
> scanner = client.scannerOpenWithStop("tab", "10", "1000", ["cf:col1"])
> total = 0.0
> r = client.scannerGet(scanner)
> while r:
> for k in (r[0].columns):
> total += float(r[0].columns[k].value)
> r = client.scannerGet(scanner)
>
> print total
>
> Do you know of better (faster) way to do sum?

scanner = client.scannerOpenWithStop("tab", "10", "1000", ["cf:col1"])
next_r = itertools.partial(client.scannerGet, scanner)
total = sum(float(col.value) for r in iter(next_r, None) for col in
r.itervalues())

Ian Kelly
Guest
Posts: n/a

 10-04-2012
On Thu, Oct 4, 2012 at 3:04 PM, Ian Kelly <(E-Mail Removed)> wrote:
> scanner = client.scannerOpenWithStop("tab", "10", "1000", ["cf:col1"])
> next_r = itertools.partial(client.scannerGet, scanner)
> total = sum(float(col.value) for r in iter(next_r, None) for col in
> r.itervalues())

That should be "functools" above, not "itertools".

Mike
Guest
Posts: n/a

 10-04-2012
I get below error

NameError: name 'functools' is not defined

Thanks

Mike
Guest
Posts: n/a

 10-04-2012
I get below error

NameError: name 'functools' is not defined

Thanks

Mike
Guest
Posts: n/a

 10-04-2012
Thanks Ian for the quick reply.

I get the below error.

NameError: name 'itertools' is not defined

Thanks

Mike
Guest
Posts: n/a

 10-04-2012
Thanks Ian for the quick reply.

I get the below error.

NameError: name 'itertools' is not defined

Thanks

Chris Angelico
Guest
Posts: n/a

 10-04-2012
On Fri, Oct 5, 2012 at 7:29 AM, Mike <(E-Mail Removed)> wrote:
> I get below error
>
> NameError: name 'functools' is not defined
>
> Thanks

functools is a module:

import functools

ChrisA

Dave Angel
Guest
Posts: n/a

 10-04-2012
On 10/04/2012 05:29 PM, Mike wrote:
> I get below error
>
> NameError: name 'functools' is not defined
>

functools is a module in the standard library. You need to import it.

import functools

--

DaveA

Mike
Guest
Posts: n/a

 10-05-2012
On Thursday, October 4, 2012 5:40:26 PM UTC-4, Dave Angel wrote:
> On 10/04/2012 05:29 PM, Mike wrote:
>
> > I get below error

>
> >

>
> > NameError: name 'functools' is not defined

>
> >

>
>
>
> functools is a module in the standard library. You need to import it.
>
>
>
> import functools
>
>
>
>
>
>
>
> --
>
>
>
> DaveA

I imported functools. Now I get the below error please.

Traceback (most recent call last):
File "test.py", line 16, in <module>
total = sum(float(col.value) for r in iter(next_r, None) for col in r.itervalues())
File "test.py", line 16, in <genexpr>
total = sum(float(col.value) for r in iter(next_r, None) for col in r.itervalues())
AttributeError: 'list' object has no attribute 'itervalues'

Thanks