微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python:循环内矩阵每个元素的绝对值

如何解决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 举报,一经查实,本站将立刻删除。