Numpy与Python的Decimal参数

时间:2014-04-23 19:55:40

标签: python numpy decimal

我有点问题。 在我的程序中,在Python 3.3中,我制作了一个十进制值列表(x):

  [Decimal('646'), Decimal('651'), Decimal('657')]

我想知道使用Numpy的平均值。

所以我写道:

  tempArray = numpy.array(x, dtype=np.dtype(decimal.Decimal))

但是我得到了错误:

  TypeError: unsupported operand type(s) for /: 'decimal.Decimal' and 'float'

我的代码出了什么问题?

2 个答案:

答案 0 :(得分:2)

为什么你需要使用Numpy?这可以通过

轻松完成
>>> sum(x)/len(x)
Decimal('651.3333333333333333333333333')

那说,我能够做到

>>> np.array(x).mean()
Decimal('651.3333333333333333333333333')

答案 1 :(得分:1)

以下在Python 2.7上对我来说很好用

import numpy
from decimal import Decimal

x = [Decimal('646'), Decimal('651'), Decimal('657')]
tempArray = numpy.array(x, dtype=numpy.dtype(Decimal))
print numpy.mean(tempArray)