我试图用pint.UnitRegistry()来找出具有给定边线的体素的音量。
错误的例子:
import pint
import numpy as np
ureg = pint.UnitRegistry()
voxel_size = (81.3, 30.2, 45.3) * ureg.micrometer
volume = np.prod(voxel_size)在以下方面的成果:
TypeError: no implementation found for 'numpy.prod' on types
that implement __array_function__: [<class 'pint.quantity.build_quantity_class.<locals>.Quantity'>]我怎样才能解决这个问题?
发布于 2020-04-22 10:36:06
基本上,pint不支持numpy.prod。有关支持的文档函数,请参见numpy。
问题是pint.UnitRegistry()返回一个类型为pint.quantity.build_quantity_class.<locals>.Quantity的对象,该对象不是一个数字数组,因此numpy.prod无法识别它。
若要将pint用于您要做的操作,请尝试以下操作.
import pint
import numpy as np
ureg = pint.UnitRegistry()
vox_volume = voxel_size = [81.3] * ureg.micrometer * [30.2] * ureg.micrometer * [45.3] * ureg.micrometer
print(vox_volume)https://stackoverflow.com/questions/61361792
复制相似问题