如何解决Python:循环内矩阵每个元素的绝对值
在python中(我是python的新手),我在循环中构建了一个矩阵,如下所示:
A[:,index_i,index_j] = B[:,index_j] - C[:,index_j]
紧接着在同一个循环中,对 A
进行了一些计算,但在我需要获得 A
之前,每个元素对这些操作都是正数,然后,编写此代码将起作用,因此每个 {{ 1}}?
A[k,index_j]>=0
如果可能,我想避免更多循环以使每个元素都为正。
谢谢!
解决方法
假设这些是 numpy 数组,以下应该可以很好地工作:
A[:,i,j] = np.abs(B[:,j]- C[:,j])
事实上,你甚至可以跳过 i,j 循环,直接:
A = np.abs(B-C)
以更pythonic和更快的方式获得相同的结果。
,内置 abs
函数接受标量值。你可以使用numpy的功能
import numpy as np
result = np.abs(...)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。