Python:absolute 循环内矩阵的每个元素的值
Python:absolute value of each element of a matrix inside a loop
在 python 中(我是 python 的新手),我有一个按以下方式在循环内构建的矩阵:
A[:,index_i ,index_j] = B[:,index_i ,index_j] - C[:,index_i ,index_j]
紧接着在同一个循环中有一些关于 A
的计算,但是在我需要得到 A
之前,每个元素对这些操作都是正数,然后,写这个就可以了,所以每个A[k,index_i,index_j]>=0
?
A[:,index_i ,index_j]= abs( B[:,index_i ,index_j] - C[:,index_i ,index_j] )
如果可能的话,我想避免更多的循环以使每个元素都为正数。
谢谢!
内置 abs
函数接受标量值。你可以使用 numpy 的函数
import numpy as np
result = np.abs(...)
假设这些是 numpy 数组,下面应该工作得很好:
A[:, i,j] = np.abs(B[:, i, j]- C[:,i, j])
事实上,您甚至可以跳过 i, j 循环并简单地对:
A = np.abs(B-C)
以更 pythonic 和更快的方式获得相同的结果。
在 python 中(我是 python 的新手),我有一个按以下方式在循环内构建的矩阵:
A[:,index_i ,index_j] = B[:,index_i ,index_j] - C[:,index_i ,index_j]
紧接着在同一个循环中有一些关于 A
的计算,但是在我需要得到 A
之前,每个元素对这些操作都是正数,然后,写这个就可以了,所以每个A[k,index_i,index_j]>=0
?
A[:,index_i ,index_j]= abs( B[:,index_i ,index_j] - C[:,index_i ,index_j] )
如果可能的话,我想避免更多的循环以使每个元素都为正数。
谢谢!
内置 abs
函数接受标量值。你可以使用 numpy 的函数
import numpy as np
result = np.abs(...)
假设这些是 numpy 数组,下面应该工作得很好:
A[:, i,j] = np.abs(B[:, i, j]- C[:,i, j])
事实上,您甚至可以跳过 i, j 循环并简单地对:
A = np.abs(B-C)
以更 pythonic 和更快的方式获得相同的结果。