如何计算 2D uarray 的平方根?
例如,
import numpy as np
from uncertainties import unumpy,umath
array=np.array([[2,3],[6,7],[5,3]])
uncertainties=np.array([[2,2],[4,4],[5,5]])
Uarray=unumpy.uarray(array,uncertainties)
print(Uarray)
输出:
[[2.0+/-2.0 3.0+/-2.0]
[6.0+/-4.0 7.0+/-4.0]
[5.0+/-5.0 3.0+/-5.0]]
现在当我尝试求平方根时,
umath.sqrt(Uarray)
我收到此错误:
“只有长度为 1 的数组可以转换为 Python 标量”
我真正想做的是取元素方根,类似于取 2D NumPy 数组的平方根。 我想象会使用循环,但我不确定如何实现它。
使用
unumpy.sqrt
代替 umath.sqrt
。
>>> unumpy.sqrt(Uarray)
array([[1.4142135623730951+/-0.7071067811865475,
1.7320508075688772+/-0.5773502691896258],
[2.449489742783178+/-0.8164965809277261,
2.6457513110645907+/-0.7559289460184544],
[2.23606797749979+/-1.118033988749895,
1.7320508075688772+/-1.4433756729740645]], dtype=object)